命令git clonegit@github.com:whatever创建一个名为whatever的目录,其中包含Git存储库:
./
whatever/
.git
我希望将Git存储库的内容克隆到我的当前目录中。/而是:
./
.git
命令git clonegit@github.com:whatever创建一个名为whatever的目录,其中包含Git存储库:
./
whatever/
.git
我希望将Git存储库的内容克隆到我的当前目录中。/而是:
./
.git
当前回答
我想很多人都想问这个问题的例子就是这个。如果您位于git存储库内容转储到的目录中,请运行:
git clone git@github.com:whatever .
结尾处的“.”将当前文件夹指定为签出文件夹。
其他回答
选项A:
git clone git@github.com:whatever folder-name
Ergo,在这里使用:
git clone git@github.com:whatever .
选项B:
也移动.git文件夹。请注意,.git文件夹在大多数图形文件浏览器中都是隐藏的,所以一定要显示隐藏的文件。
mv /where/it/is/right/now/* /where/I/want/it/
mv /where/it/is/right/now/.* /where/I/want/it/
第一行获取所有普通文件,第二行获取点文件。也可以通过启用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避免与现有和非现有链接进行一些经常不需要的交互)。
如果你只是想让它发挥作用,使用选项A,如果其他人要看你做了什么,使用选项C。
如果使用ssh进行git克隆,可以使用以下命令。
git-C路径克隆git@github.com:路径_to_epo.git
如:git-C/home/ubuntu/clonegit@github.com:kennetritz/requests.git将请求的git存储库拉到/home/ubuntu/path。
当您将文件移动到需要的位置时,是否也在移动.git目录?根据您的操作系统和配置,此目录可能被隐藏。
它包含repo和支持文件,而位于/public目录中的项目文件仅为当前签出提交(默认情况下为主分支)中的版本。
如果使用github-cli,则可以使用以下命令:
gh repo clone <repository> [<directory>] [-- <gitflags>...]
例如,您可以运行以下命令:
gh repo clone repository-name-on-github my-local-folder
进入文件夹。。如果文件夹为空,则:
git clone git@github.com:whatever .
else
git init
git remote add origin PATH/TO/REPO
git fetch
git checkout -t origin/master