草庐IT

git - 列出影响文件的 merge 提交

我想找到影响或涉及给定文件的所有merge提交。作为背景,有人在merge时误解决了一个冲突,几天后团队都没有注意到。那时,已经提交了许多其他不相关的merge(我们中的一些人一直宁愿不使用rebase,否则事情会更简单)。我需要找到“错误的”merge提交,以便对其进行检查以识别可能已恢复的其他内容(当然,识别和惩罚有罪的)。场景是这样的:$echoFirst>a.txt&&gitadda.txt&&gitcommit-m'Firstcommit'$gitbranchbranch1$echo"Second:main-branch">>a.txt&&gitcommit-a-m'Comm

git - 列出影响文件的 merge 提交

我想找到影响或涉及给定文件的所有merge提交。作为背景,有人在merge时误解决了一个冲突,几天后团队都没有注意到。那时,已经提交了许多其他不相关的merge(我们中的一些人一直宁愿不使用rebase,否则事情会更简单)。我需要找到“错误的”merge提交,以便对其进行检查以识别可能已恢复的其他内容(当然,识别和惩罚有罪的)。场景是这样的:$echoFirst>a.txt&&gitadda.txt&&gitcommit-m'Firstcommit'$gitbranchbranch1$echo"Second:main-branch">>a.txt&&gitcommit-a-m'Comm

git - 如何真正删除一个 git 分支(即删除它的所有对象/提交)?

我有一个像这样的git树A---B---Ctopic/D---E---F---Gmaster我想删除主题及其上的所有对象。我记下主题的SHAID,然后键入:gitbranch-Dtopicgitgc#在最后一条命令之后,我希望得到一个错误(类似于“不存在的对象ID...”或类似的东西)。但是没有错误,gitk显示了与上面相同的树结构??我错过了什么-我认为gc/prune应该删除所有无法访问的对象? 最佳答案 仅gcprune通常不足以删除repo中的额外对象。如果在reflog中仍然引用提交,它不会认为这些对象不可访问,因此可以进

git - 如何真正删除一个 git 分支(即删除它的所有对象/提交)?

我有一个像这样的git树A---B---Ctopic/D---E---F---Gmaster我想删除主题及其上的所有对象。我记下主题的SHAID,然后键入:gitbranch-Dtopicgitgc#在最后一条命令之后,我希望得到一个错误(类似于“不存在的对象ID...”或类似的东西)。但是没有错误,gitk显示了与上面相同的树结构??我错过了什么-我认为gc/prune应该删除所有无法访问的对象? 最佳答案 仅gcprune通常不足以删除repo中的额外对象。如果在reflog中仍然引用提交,它不会认为这些对象不可访问,因此可以进

git - 为什么当我需要 *pull* origin master 时它说 "Your branch is ahead of origin/master by 857 commits"

首先,我知道一些措辞相似的问题,例如:HowcanIfindthelocationoforigin/masteringit,andhowdoIchangeit?git:YourbranchisAheadbyXcommitsGit:BranchisaheadbyXcommits.Doesn'thelpdoinggitpullpull-onlyrepo's'gitstatus'sayingthebranchisaheadoforigin/master.Why?他们(AFAICT)都没有与我对这个问题的版本相匹配的答案。我的情况是:$gitstatus#Onbranchstablenothi

git - 为什么当我需要 *pull* origin master 时它说 "Your branch is ahead of origin/master by 857 commits"

首先,我知道一些措辞相似的问题,例如:HowcanIfindthelocationoforigin/masteringit,andhowdoIchangeit?git:YourbranchisAheadbyXcommitsGit:BranchisaheadbyXcommits.Doesn'thelpdoinggitpullpull-onlyrepo's'gitstatus'sayingthebranchisaheadoforigin/master.Why?他们(AFAICT)都没有与我对这个问题的版本相匹配的答案。我的情况是:$gitstatus#Onbranchstablenothi

git - 为什么 git 不允许我安全地删除一个分支?

我需要merge两个分支--second到first中,然后去掉second。这是我所做的:gitcloned项目以获取新副本gitcheckout--trackorigin/second,做了一些修改,然后提交gitcheckout--trackorigin/first,进行一些更改,然后提交gitmergesecond(git表示“递归merge”)gitbranch-dsecond然后git说:$gitbranch-dsecondwarning:notdeletingbranch'second'thatisnotyetmergedto'refs/remotes/origin/se

git - 为什么 git 不允许我安全地删除一个分支?

我需要merge两个分支--second到first中,然后去掉second。这是我所做的:gitcloned项目以获取新副本gitcheckout--trackorigin/second,做了一些修改,然后提交gitcheckout--trackorigin/first,进行一些更改,然后提交gitmergesecond(git表示“递归merge”)gitbranch-dsecond然后git说:$gitbranch-dsecondwarning:notdeletingbranch'second'thatisnotyetmergedto'refs/remotes/origin/se

git - 为什么 git branch -t 失败并显示 "Not tracking: ambiguous information"?

当我尝试创建一个跟踪远程分支的新分支时,我得到了这个:$gitbranch-ttestorigin/fooerror:Nottracking:ambiguousinformationforrefrefs/remotes/origin/fooThesource似乎以某种方式搜索要跟踪的分支并将我赶出去,因为它发现less不止一个,但我不完全明白它在寻找什么,因为我已经在命令行上告诉它要跟踪什么.谁能告诉我这是怎么回事以及如何解决它? 最佳答案 当我有两个具有相同(默认)获取模式(fetch=+refs/heads/*:refs/rem

git - 为什么 git branch -t 失败并显示 "Not tracking: ambiguous information"?

当我尝试创建一个跟踪远程分支的新分支时,我得到了这个:$gitbranch-ttestorigin/fooerror:Nottracking:ambiguousinformationforrefrefs/remotes/origin/fooThesource似乎以某种方式搜索要跟踪的分支并将我赶出去,因为它发现less不止一个,但我不完全明白它在寻找什么,因为我已经在命令行上告诉它要跟踪什么.谁能告诉我这是怎么回事以及如何解决它? 最佳答案 当我有两个具有相同(默认)获取模式(fetch=+refs/heads/*:refs/rem