我有一个项目的工作副本,没有任何源控制元数据。现在,我想把git-clone复制到这个文件夹中,并保留我的本地更改。

Git-clone不允许我克隆到现有的文件夹。这里的最佳实践是什么?


当前回答

只要用。在git克隆命令的最后(在那个目录下),像这样:

cd your_dir_to_clone_in/
git clone git@github.com/somerepo/ .

其他回答

git init
git remote add origin git@github.com:<user>/<repo>.git
git remote -v
git pull origin master

我将git克隆到一个新目录,并将现有目录的内容复制到新的克隆。

只要用。在git克隆命令的最后(在那个目录下),像这样:

cd your_dir_to_clone_in/
git clone git@github.com/somerepo/ .

如果你正在使用至少git 1.7.7(教会克隆——config选项),将当前目录转换为工作副本:

git clone example.com/my.git ./.git --mirror --config core.bare=false

这是通过:

将存储库克隆到一个新的.git文件夹中 ——mirror会像.git需要的那样,将新的克隆文件放到纯元数据文件夹中 ——配置的核心。Bare =false撤销了——mirror选项中隐含的Bare =true,从而允许存储库拥有一个相关联的工作目录,并像正常的克隆一样工作


如果您希望转换为工作副本的目录中已经存在.git元数据目录,那么这显然是行不通的。

git clone your_repo tmp && mv tmp/.git . && rm -rf tmp && git reset --mixed