我使用TortoiseGit v1.8.9.0作为我的客户端。
我有一个git存储库,目前有两个分支。头分支和1.0.0-增强分支。
在我的本地存储库中,1.0.0增强分支不是最新的。因此,当我使用TortoiseGit查看本地的这个分支的提交历史时,它并没有显示在这个分支上的提交,就像我在GitWeb的远程上看到的那样。
这里有两个截图,说明我的1.0.0增强分支的本地副本缺少提交。
->使用TortoiseGit的本地历史记录
--> GitWeb上的远程历史
我的最终目标是将1.0.0增强分支合并到HEAD分支中,但是在我这样做之前,我相信1.0.0增强分支应该是本地最新的。
我已经尝试了几个小时,试图找到一种获取1.0.0的方法--从远程到本地的增强提交,但是找不到一种方法。这就是我试过的..。
但是,在查看了我的1.0.0增强分支的历史之后,缺失的提交仍然是缺失的。有人能帮我解决这个问题吗?
--更新回答byt @杯蛋糕的内容--
TortoiseGit还带有bash提示符。我使用命令行尝试了您的两种建议,但它们都没有起作用。以下是结果。
但我似乎在尝试从TortoiseGit UI中提取git时取得了一些进展。
它似乎起作用了,除非它回来时有个错误:
git.exe拉出-v --进度“原产地”1.0.0-增强 从ssh://upredmine/cvs/repo/codeRepository/git/repo04/EPOS/EPOSWeb *分支1.0.0-增强-> FETCH_HEAD更新67b6537..ee38b20错误:以下未跟踪的工作树文件将被合并覆盖:.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs .元数据/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs .元数据/version.ini请在合并之前移动或删除它们。正在中止 git没有干净地退出(出口代码1) (1094 ms @ 16/07/2014 3:32:47下午)
你能给我一些反馈吗?我需要强制更新还是同步?
发布于 2014-07-16 04:29:48
看起来,您遇到的问题是,您只是将增强分支提取到本地回购中,但实际上并没有将远程跟踪分支origin/1.0.0-Enhancements
合并到本地1.0.0-Enhancements
分支中。
基本上,您的分支设置如下(让X表示您的增强分支):
正如您在上面的图表中所看到的,涉及三个分支:
origin/X
,它跟踪X的远程版本在哪里.通过使用git fetch
,您可以更新本地repo...but中的本地远程跟踪分支origin/1.0.0-Enhancements
,这是一个独立于本地1.0.0-Enhancements
分支的分支。
所以,你想要做的是:
git pull
,或git merge
远程跟踪部门.请注意,git pull
实际上只是一个git fetch
的组合,后面是您刚刚获取的分支的git merge
。
备选案文1:合并
由于您已经获取了,所以只需要将origin/1.0.0-Enhancements
合并到本地1.0.0-Enhancements
分支中即可。我不知道在TortoiseGit中是如何做到这一点的(我几年前就不再使用它了),但是如果您想通过命令行这样做,只需这样做。
git checkout 1.0.0-Enhancements
git merge origin/1.0.0-Enhancements
备选方案2:拉
在将来,如果没有先提取,则可以从远程分支执行对本地分支的拉入。再说一遍,我已经不知道如何在TortoiseGit中这样做了,但是如果您想要从命令行执行此操作,则只需执行以下操作
git checkout 1.0.0-Enhancements
git pull origin 1.0.0-Enhancements
头符号引用的注记
因此符号引用origin/HEAD
不是分支。它只是一个特殊的引用,指向(裸)远程repo...the中的默认分支,该分支默认由该回购的任何克隆签出。
在一个非裸回购中,HEAD
仍然是一个符号引用,但是它不是指向默认分支,而是指向当前签出的分支,或者当前签出的提交,如果您当前不在分支的顶端(例如,“分离的头”状态)。
文档
https://stackoverflow.com/questions/24771795
复制相似问题