从Git分支获取最新信息

从Git分支获取最新信息,git,Git,我从git存储库克隆了一些东西,并切换了分支 git clone ssh://11.21.3.12:23211/dir1/dir2 dir git branch branch1 我做了一些修改,在我的地方,并承诺它。其他人也做了克隆,他把它推到git存储库中 现在,我希望branch1的克隆副本在我的本地(意味着不希望我的更新,但希望他的更新)使用git pull: git pull origin yourbranch 虽然git-pull-origin-yourbrance可以工作,但是

我从git存储库克隆了一些东西,并切换了分支

git clone ssh://11.21.3.12:23211/dir1/dir2 dir
git branch branch1
我做了一些修改,在我的地方,并承诺它。其他人也做了克隆,他把它推到git存储库中

现在,我希望branch1的克隆副本在我的本地(意味着不希望我的更新,但希望他的更新)

使用git pull:

git pull origin yourbranch

虽然git-pull-origin-yourbrance可以工作,但是

您也可以执行以下操作:

git fetch origin
git merge origin/yourbranch
第一行从原点获取所有分支,但不与分支合并。这就完成了存储库的复制

第二行将您当前的分支与您从
源站
获取的
您的分支
的分支合并(这是您的
远程
之一)


这是假设
origin
指向存储库的地址
ssh://11.21.3.12:23211/dir1/dir2

您的修改在与原始分支不同的分支中,这简化了工作,因为您在一个分支中获得更新,而您的工作在另一个分支中

假设原始分支名为
master
,这在99%的git回购中都是如此,您必须获取原始状态,并将
origin/master
更新合并到本地
master

 git fetch origin
 git checkout master
 git merge origin/master
要切换到您的分支,只需执行以下操作

 git checkout branch1

如果您已从存储库中分叉,以删除分叉副本并再次从master中分叉。

您的意思是像
git push origin branch1
?啊,对不起,我以为您想推送更新。不,我不想要我的更新。我只想知道他的最新情况。你只想从中心位置“获取最新信息”,对吗?--标题说明了一切。@Surendhar,说真的,试着学习
fetch/merge
<代码>拉总有一天会给你带来麻烦,你会习惯于它,以至于无法更改为
获取/合并
er。。。它什么也没做——它说它已经是最新的,已经在master中了,等等——我克隆这个分支已经有一年了,我知道已经有很多变化了。@brainslaugs83你克隆的不是一个分支,而是一个存储库。在执行了上面的命令之后,我注意到,在git目录中,HEAD、index和packed refs文件是不同的。这只是为了跟踪相关的分支吗?@RetroCoder您从远程存储库获取了修改,所以这些引用被更新以确认新对象是正常的。每次签出一个分支时,HEAD都会更新,或者在我合并它时创建一个新的commitw,比如说*branch master->FETCH\u HEAD。有什么解决办法吗?@NIKHILCHANDRAROY请提出一个新问题,并提供更多细节。