2014-02-06 161 views
0

我已经克隆了一个存储库,并在其中有一个.git目录。我担心的是,如果我承诺,它也会承诺原始存储库,我不希望它发生。有没有一种方法可以解决这个问题,它不会影响我从中克隆的原始存储库。如何不影响原始克隆的git存储库

在此先感谢。

编辑: 我通常做,以保持我的仓库是如下:

cd /path/to/my/local_repo 
git remote add origin my_repo_link 
git push -u origin --all 

回答

4

如果使用push命令时,只会影响到原始的或远程存储库。

Git不同于svn,因为您拥有完整的本地回购。你可以commit到那个回购所有你想要的,因为它是一个不同的回购。当你push你要求你当地的回购做一个svn风格commit任何你已经在本地回购改变到远程(原始)回购。

如果你想从一个仓库克隆,然后推到不同的远程仓库,你需要改变你的本地分支指向的远程分支。

How do I change the remote a git branch is tracking?

+0

我see..but我需要远程运行命令推保持git的(上bitbucket,我的,而不是原始的回购)。 –

+0

如果我在更改远程回购之后运行“push”命令,如“git branch --set-upstream branch_name your_new_remote/branch_name”,那么我该更正吗? –

+1

是的,我会尝试推一个像评论一样简单的编辑作为测试。 – jeremyjjbrown

1

如果还担心弄乱你的本地库,你可以创建一个本地分支:

git branch <my new branch> 
git checkout <my new branch> 
... <make all your changes> 
git commit -a . 
... <if your want to go back to your previous state> 
git branch <your initial branch> 
... < if you want to clean up> 
git branch -d <my new branch>