执行该命令git clone git@github.com:whatever会在我的当前文件夹中创建一个名为whatever的目录,并将 Git 存储库的内容放到该文件夹中:
git clone git@github.com:whatever
whatever
/httpdocs/whatever/public
我的问题是我需要将 Git 存储库的内容克隆到我的当前目录中,以便它们出现在 Web 服务器的正确位置:
/httpdocs/public
我知道在克隆存储库后如何移动文件,但这似乎破坏了 Git,我希望能够通过调用git pull. 我怎样才能做到这一点?
git pull
选项 A:
git clone git@github.com:whatever folder-name
因此,right here使用:
right here
git clone git@github.com:whatever .
选项 B:
也移动.git文件夹。请注意,该.git文件夹在大多数图形文件资源管理器中是隐藏的,因此请务必显示隐藏文件。
.git
mv /where/it/is/right/now/* /where/I/want/it/ mv /where/it/is/right/now/.* /where/I/want/it/
第一行抓取所有普通文件,第二行抓取点文件。也可以通过启用 dotglob (ie shopt -s dotglob) 在一行中执行此操作,但如果您问这个答案回答的问题,这可能是一个糟糕的解决方案。
shopt -s dotglob
更好的是:
将您的工作副本保存在其他地方,并创建一个符号链接。像这样:
ln -s /where/it/is/right/now /the/path/I/want/to/use
对于您的情况,这将类似于:
ln -sfn /opt/projectA/prod/public /httpdocs/public
如果您愿意,可以轻松更改以进行测试,即:
ln -sfn /opt/projectA/test/public /httpdocs/public
无需移动文件。添加-fn以防有人复制这些行(-f强制, -n避免与已经存在和不存在的链接进行一些经常不需要的交互)。
-fn
-f
-n
如果您只是想让它起作用,请使用选项 A,如果其他人要查看您所做的事情,请使用选项 C。