草庐IT

git - 'git merge' 和 'git rebase' 有什么区别?

gitmerge和gitrebase有什么区别? 最佳答案 假设最初有3个提交,A、B、C:然后开发人员Dan创建了提交D,开发人员Ed创建了提交E:显然,应该以某种方式解决此冲突。为此,有两种方法:merge:提交D和E仍然在这里,但是我们创建merge提交M继承了D和E。然而,这会产生菱形形状,许多人对此感到非常困惑。重置:我们创建提交R,其实际文件内容与上面的merge提交M相同。但是,我们摆脱了提交E,就像它从未存在过一样(用点-消失线表示)。由于这种删除,E对于开发人员Ed来说应该是本地的,并且永远不会被推送到任何其他存储

git - git branch、fork、fetch、merge、rebase 和 clone 有什么区别?

我想了解Git中分支、fork和克隆之间的区别?类似地,当我做gitfetch是什么意思?而不是gitpull?还有,rebase是什么意思?与merge相比的平均值?我怎样才能将个人promise压在一起?它们是如何使用的,为什么使用它们以及它们代表什么?GitHub是如何出现的? 最佳答案 克隆只是存储库的副本。从表面上看,它的结果相当于svncheckout,您可以在其中从其他存储库下载源代码。像Subversion这样的集中式VCS和像Git这样的DVCS之间的区别在于,在Git中,当您克隆时,您实际上是在复制整个源存储库,

git - git branch、fork、fetch、merge、rebase 和 clone 有什么区别?

我想了解Git中分支、fork和克隆之间的区别?类似地,当我做gitfetch是什么意思?而不是gitpull?还有,rebase是什么意思?与merge相比的平均值?我怎样才能将个人promise压在一起?它们是如何使用的,为什么使用它们以及它们代表什么?GitHub是如何出现的? 最佳答案 克隆只是存储库的副本。从表面上看,它的结果相当于svncheckout,您可以在其中从其他存储库下载源代码。像Subversion这样的集中式VCS和像Git这样的DVCS之间的区别在于,在Git中,当您克隆时,您实际上是在复制整个源存储库,

git - 从远程服务器 pull 某个分支

假设有人创建了一个分支xyz。如何从远程服务器(例如GitHub)中pull分支xyz并将其merge到本地存储库中的现有分支xyz?答案PushbranchestoGit给我错误“![rejected]”并提到“非快进”。 最佳答案 ButIgetanerror"![rejected]"andsomethingabout"nonfastforward"那是因为Git无法将分支中的更改merge到您当前的母版中。假设您已经checkout分支master,并且您想要merge到远程分支other-branch。当您这样做时:$git

git - 从远程服务器 pull 某个分支

假设有人创建了一个分支xyz。如何从远程服务器(例如GitHub)中pull分支xyz并将其merge到本地存储库中的现有分支xyz?答案PushbranchestoGit给我错误“![rejected]”并提到“非快进”。 最佳答案 ButIgetanerror"![rejected]"andsomethingabout"nonfastforward"那是因为Git无法将分支中的更改merge到您当前的母版中。假设您已经checkout分支master,并且您想要merge到远程分支other-branch。当您这样做时:$git

git - Git 最好的可视化 merge 工具是什么?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭2年前。Improvethisquestion在Git中查看和编辑merge的最佳工具是什么?我想要一个三向mergeView,在单独的面板中包含“我的”、“他们的”和“祖先”,以及第四个“输出”面板。此外,调用所述工具的说明会很棒。(我仍然没有弄清楚如何以不会给我错误的方式启动kdiff3。)我的操作系统是Ubuntu。

git - Git 最好的可视化 merge 工具是什么?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭2年前。Improvethisquestion在Git中查看和编辑merge的最佳工具是什么?我想要一个三向mergeView,在单独的面板中包含“我的”、“他们的”和“祖先”,以及第四个“输出”面板。此外,调用所述工具的说明会很棒。(我仍然没有弄清楚如何以不会给我错误的方式启动kdiff3。)我的操作系统是Ubuntu。

git - merge 、更新和 pull Git 分支而不使用 checkout

我在一个有2个分支A和B的项目上工作。我通常在分支A上工作,然后merge分支B中的东西。对于merge,我通常会这样做:gitmergeorigin/branchB但是,我还想保留分支B的本地副本,因为我可能偶尔会在不先与我的分支Amerge的情况下检查该分支。为此,我会这样做:gitcheckoutbranchBgitpullgitcheckoutbranchA有没有一种方法可以在一个命令中完成上述操作,而不必来回切换分支?我应该为此使用gitupdate-ref吗?怎么办? 最佳答案 简短的回答只要你在进行快进merge,那么

git - merge 、更新和 pull Git 分支而不使用 checkout

我在一个有2个分支A和B的项目上工作。我通常在分支A上工作,然后merge分支B中的东西。对于merge,我通常会这样做:gitmergeorigin/branchB但是,我还想保留分支B的本地副本,因为我可能偶尔会在不先与我的分支Amerge的情况下检查该分支。为此,我会这样做:gitcheckoutbranchBgitpullgitcheckoutbranchA有没有一种方法可以在一个命令中完成上述操作,而不必来回切换分支?我应该为此使用gitupdate-ref吗?怎么办? 最佳答案 简短的回答只要你在进行快进merge,那么

git - 查找 Git 提交来自哪个分支

有没有办法根据SHA-1找出提交来自哪个分支?哈希值?如果你能告诉我如何使用RubyGrit完成此任务,可加分。 最佳答案 虽然Dav没有直接存储信息是正确的,但这并不意味着您永远无法找到。以下是您可以执行的一些操作。查找提交所在的分支gitbranch-a--contains这将告诉您在其历史记录中具有给定提交的所有分支。显然,如果提交已经merge,这就没那么有用了。搜索reflogs如果您在进行提交的存储库中工作,您可以在引用日志中搜索该提交的行。超过90天的Reflog会被git-gc修剪,所以如果提交太旧,你将找不到它。也