草庐IT

git - 计算 merge 后添加/删除的总行数?

我最近将一个有很多提交的分支merge回我的master分支。如果我需要返回并查看由于merge而添加或删除了多少行,我将如何做? 最佳答案 gitdiff有一个--shortstat选项,它在merge之前很有用,因为那时你可以刚刚完成gitdiff--shortstat。.branch/to/merge来自你的主分支。如果merge不是快进,那么您将生成一个merge提交。这将具有两个分支的父信息。您可以使用它们来执行gitdiff--shortstatparent1..mergecommit以显示从第一个父级(您的主分支)移动

git - 如何使用 git subtree 包含另一个 git 存储库的一部分并在两个方向上 merge 更新

下面显示了两个git存储库。第一个的结构类似于典型的Python项目。foo_repo/.git/setup.pyfoo/__init__.pysome_code.pytests/bar/.git/我想将foo_repo/foo/目录作为子树包含在bar/中,并且我希望能够将更新merge到foo_repo/foo/some_code.py从foo_repo存储库到bar,反之亦然。初始设置还不错。在我使用的foo/目录中:gitsubtree--prefix=foo/split-bexport然后我在foo_repo中有一个新分支,其中只有foo_repo/foo/目录的内容。要将它

git - 如何使用 git subtree 包含另一个 git 存储库的一部分并在两个方向上 merge 更新

下面显示了两个git存储库。第一个的结构类似于典型的Python项目。foo_repo/.git/setup.pyfoo/__init__.pysome_code.pytests/bar/.git/我想将foo_repo/foo/目录作为子树包含在bar/中,并且我希望能够将更新merge到foo_repo/foo/some_code.py从foo_repo存储库到bar,反之亦然。初始设置还不错。在我使用的foo/目录中:gitsubtree--prefix=foo/split-bexport然后我在foo_repo中有一个新分支,其中只有foo_repo/foo/目录的内容。要将它

由于在两个分支中重命名导致 git merge 冲突 - 将来如何修复和避免?

我有两个本地分支master和dev。两个分支都包含三个文件夹:projectBetaprojectproject_v1我只想保留projectBeta并删除project和project_v1然后将projectBeta重命名为项目。所以这就是我在两个分支上分别做的事情,在我进行的过程中做出promise。一切看起来都很好,直到我尝试将dev分支merge到master,但我遇到了一堆这样的错误:CONFLICT(rename/delete):RenameprojectBeta/test.c->project/test.cindevanddeletedinHEADCONFLICT(r

由于在两个分支中重命名导致 git merge 冲突 - 将来如何修复和避免?

我有两个本地分支master和dev。两个分支都包含三个文件夹:projectBetaprojectproject_v1我只想保留projectBeta并删除project和project_v1然后将projectBeta重命名为项目。所以这就是我在两个分支上分别做的事情,在我进行的过程中做出promise。一切看起来都很好,直到我尝试将dev分支merge到master,但我遇到了一堆这样的错误:CONFLICT(rename/delete):RenameprojectBeta/test.c->project/test.cindevanddeletedinHEADCONFLICT(r

git - 使用 git merge 解决冲突的单独提交

我正在尝试将一个大主题分支merge到主分支中,但我想要一个单独的提交来显示冲突解决是如何发生的。目标是让一次提交显示“这些文件发生冲突以及它们如何发生冲突”,而下一次提交将显示“这是如何解决冲突的”。IE。第一次提交将包含冲突标记。之所以会这样,是因为bigtopic分支已经过review和测试,master分支也是。对于merge,我们只想审查需要一些工作的部分(冲突和其他merge工作)。到目前为止,这是我正在做的事情:gitcheckoutmastergitcheckout-bmerge-from-topicgitmergetopic为了记录有冲突的文件,我使用了一个临时文件:

git - 使用 git merge 解决冲突的单独提交

我正在尝试将一个大主题分支merge到主分支中,但我想要一个单独的提交来显示冲突解决是如何发生的。目标是让一次提交显示“这些文件发生冲突以及它们如何发生冲突”,而下一次提交将显示“这是如何解决冲突的”。IE。第一次提交将包含冲突标记。之所以会这样,是因为bigtopic分支已经过review和测试,master分支也是。对于merge,我们只想审查需要一些工作的部分(冲突和其他merge工作)。到目前为止,这是我正在做的事情:gitcheckoutmastergitcheckout-bmerge-from-topicgitmergetopic为了记录有冲突的文件,我使用了一个临时文件:

git - 如何允许 git merge 提交掌握但防止非 merge 提交?

我有一个Git预提交Hook,它阻止我提交到master除非被覆盖,以鼓励在分支上开发。但是我想自动允许merge提交到master。有没有办法从我的预提交Hook脚本中识别merge提交?脚本如下所示:#!/bin/bashBRANCH=`gitbranch--color=never|grep'^*'|cut-c3-`if["${BRANCH}D"=="masterD"-a"${GIT_COMMIT_TO_MASTER}D"!="trueD"]thenecho"Commitdirectlytomasterisdiscouraged."echo"Ifyouwanttodothis,pl

git - 如何允许 git merge 提交掌握但防止非 merge 提交?

我有一个Git预提交Hook,它阻止我提交到master除非被覆盖,以鼓励在分支上开发。但是我想自动允许merge提交到master。有没有办法从我的预提交Hook脚本中识别merge提交?脚本如下所示:#!/bin/bashBRANCH=`gitbranch--color=never|grep'^*'|cut-c3-`if["${BRANCH}D"=="masterD"-a"${GIT_COMMIT_TO_MASTER}D"!="trueD"]thenecho"Commitdirectlytomasterisdiscouraged."echo"Ifyouwanttodothis,pl

git - merge 后的交互式 rebase /其他提交交错我的

我典型的git工作流程是从我们的master分支创建一个功能分支,进行小的提交,同时定期从master分支merge以跟上。然后我在github上打开一个pull请求,当它被接受时,我将删除该分支。我想更多地交互rebase,但是当我这样做时,我会遇到merge提交和其他人的提交与我自己的交错。我不确定如何/是否可以压缩这些提交或单独分组/压缩我的提交?例如,当需要rebase时,我的分支的git日志可能看起来像这样:mergecommitsomeoneelse'scommitoneofmycommitsanotheroneofmycommitsanothermergecommitan