克隆分支而不合并主分支

时间:2012-01-10 14:23:53

标签: git branch git-branch

有时我希望能够从回购中获取(通过克隆)。但是,当我这样做,然后更改为本地分支以引入远程分支时,git假设我想采用主分支并将其集成。我该如何避免这种情况?我确信我可以通过一系列不同的动作/命令实现我想要的目标。

我想说当我想在辅助机器上的特定分支上工作时,我通常遇到这种情况。

更新
我在辅助机器上运行以下命令,我只想在实验分支上工作

git clone http://somewhere.com/something.git    
git branch experiment    
git checkout experiment   
git pull origin experiement    

2 个答案:

答案 0 :(得分:2)

每个分支都需要指向某个提交。如果您没有指定任何内容,git branch将新分支指向与HEAD相同的提交。

您希望分支指向origin/experiment

git clone http://somewhere.com/something.git
cd something
git branch experiment origin/experiment
git checkout experiment

...或

git clone http://somewhere.com/something.git
cd something
git checkout -b experiment origin/experiment

或者,因为git足够聪明,可以知道在这种情况下你要做什么......

git clone http://somewhere.com/something.git
cd something
git checkout experiment

所有这些都会做同样的事情(创建指向origin/experiment的新分支)。他们还会将分支设置为 track origin/experiment,因此push和pull将来往于该远程分支。

答案 1 :(得分:0)

如果您只想从遥控器或遥控器获取分支而不合并任何东西,您可以只做

git fetch --all

git fetch [remote]

我通常只是打开git gui并点击遥控器> fetch> [remote]然后我用

gitk --all 

查看远程分支机构的操作。
如果我想......我可以合并...... git pull表示获取+合并