草庐IT

bisect_right

全部标签

Go Modules : finding out right pseudo-version (vX. Y.Z-<timestamp>-<commit>) 所需包

我正在试用Go模块。我的项目需要库golang.org/x/net/html,所以我定义了这个go.mod文件:modulegithub.com/patrickbucher/prettyprintrequiregolang.org/x/net/html并编写了这个演示程序来检查编译时是否加载了依赖项:packagemainimport("fmt""log""os""golang.org/x/net/html")funcmain(){doc,err:=html.Parse(os.Stdin)iferr!=nil{log.Fatal(err)}fmt.Println(doc)}当我运行go

Go Modules : finding out right pseudo-version (vX. Y.Z-<timestamp>-<commit>) 所需包

我正在试用Go模块。我的项目需要库golang.org/x/net/html,所以我定义了这个go.mod文件:modulegithub.com/patrickbucher/prettyprintrequiregolang.org/x/net/html并编写了这个演示程序来检查编译时是否加载了依赖项:packagemainimport("fmt""log""os""golang.org/x/net/html")funcmain(){doc,err:=html.Parse(os.Stdin)iferr!=nil{log.Fatal(err)}fmt.Println(doc)}当我运行go

git - `git bisect` 或 `git log -S --all` 找不到 merge 提交所做的更改

我修复了一个文件,并将其提交到我的git存储库。一段时间后,我发现它退步了。我想知道在哪个提交中删除了修复程序,所以我尝试了gitbisect和gitlog--all-STERM,其中“TERM”是一个字符串由我的修复程序添加,并且在项目的其他任何地方都没有出现。我发现gitbisect归咎于一个不相关的提交,我发现gitlog--all-STERM只列出了我添加了TERM的提交,并且没有将任何提交列为已删除它,即使它不再位于“master”的文件中。经过一番手工查找,发现两个分支之间发生了mergecommit。一个分支有我的修复,一个没有。merge作者在没有我修复的情况下选择了分

git - `git bisect` 或 `git log -S --all` 找不到 merge 提交所做的更改

我修复了一个文件,并将其提交到我的git存储库。一段时间后,我发现它退步了。我想知道在哪个提交中删除了修复程序,所以我尝试了gitbisect和gitlog--all-STERM,其中“TERM”是一个字符串由我的修复程序添加,并且在项目的其他任何地方都没有出现。我发现gitbisect归咎于一个不相关的提交,我发现gitlog--all-STERM只列出了我添加了TERM的提交,并且没有将任何提交列为已删除它,即使它不再位于“master”的文件中。经过一番手工查找,发现两个分支之间发生了mergecommit。一个分支有我的修复,一个没有。merge作者在没有我修复的情况下选择了分

git - git bisect skip 如何选择下一个提交来尝试?

当使用gitbisect时,可以运行gitbisectskip将当前提交标记为不可构建/不可测试,尝试让Git选择其他提交改为进行测试。Git如何决定在gitbisectskip之后尝试哪个提交?实验表明这不仅仅是一个相邻的提交,但我无法找出模式。编辑:我知道基本的gitbisect是二进制搜索,但我对gitbisectskip很好奇,它显然在做更复杂的事情。实验表明它不仅仅是选择相邻的提交;下面创建了100个编号为0-99的提交,然后开始将它们一分为二。gitbisect选择的第一个提交在中间,但此后的每个gitbisectskip似乎或多或少都是随机选择的。$gitinitInit

git - git bisect skip 如何选择下一个提交来尝试?

当使用gitbisect时,可以运行gitbisectskip将当前提交标记为不可构建/不可测试,尝试让Git选择其他提交改为进行测试。Git如何决定在gitbisectskip之后尝试哪个提交?实验表明这不仅仅是一个相邻的提交,但我无法找出模式。编辑:我知道基本的gitbisect是二进制搜索,但我对gitbisectskip很好奇,它显然在做更复杂的事情。实验表明它不仅仅是选择相邻的提交;下面创建了100个编号为0-99的提交,然后开始将它们一分为二。gitbisect选择的第一个提交在中间,但此后的每个gitbisectskip似乎或多或少都是随机选择的。$gitinitInit

git - 你如何让 git bisect 忽略 merge 的分支?

我知道gitbisect在设计上是分支感知的,所以如果在好的提交G和坏的提交B之间,你merge到一个分支中,它也需要考虑这些更改,因为该错误可能包含在分支中。在我的例子中,我有一个依赖项作为一个分支,我不时地merge对我的主项目的更改。依赖项可以被认为是一个库,它具有与我的主项目不同的运行方式、不同的构建系统等,但我仍然希望通过merge到主分支来对其进行最近的更改。问题在于,在这种情况下进行二等分时,您最终会在来自依赖项的提交中遇到不可编译的提交。我真的只想在进行二分法时将每个分支merge视为单个提交。到目前为止,我发现的一个解决方法是使用gitlog--first-paren

git - 你如何让 git bisect 忽略 merge 的分支?

我知道gitbisect在设计上是分支感知的,所以如果在好的提交G和坏的提交B之间,你merge到一个分支中,它也需要考虑这些更改,因为该错误可能包含在分支中。在我的例子中,我有一个依赖项作为一个分支,我不时地merge对我的主项目的更改。依赖项可以被认为是一个库,它具有与我的主项目不同的运行方式、不同的构建系统等,但我仍然希望通过merge到主分支来对其进行最近的更改。问题在于,在这种情况下进行二等分时,您最终会在来自依赖项的提交中遇到不可编译的提交。我真的只想在进行二分法时将每个分支merge视为单个提交。到目前为止,我发现的一个解决方法是使用gitlog--first-paren

git - 为什么 git-bisect 必须从工作树的顶级目录运行?

如果尝试从存储库根目录以外的任何地方运行任何git-bisect命令,则会被告知:Youneedtorunthiscommandfromthetopleveloftheworkingtree.这是为什么呢?我知道没有其他git命令有这个要求,我也没有看到bisect应该特别的明显原因。手册页也没有提及此限制。其实没什么大不了的。我主要只是好奇。 最佳答案 查看项目中的一些提交,我看到了MarcelM.Cary(marcel@oak.homeunix.org)的提交他在提交中说(它恰好是关于git-pull但我认为它是相关的)"git

git - 为什么 git-bisect 必须从工作树的顶级目录运行?

如果尝试从存储库根目录以外的任何地方运行任何git-bisect命令,则会被告知:Youneedtorunthiscommandfromthetopleveloftheworkingtree.这是为什么呢?我知道没有其他git命令有这个要求,我也没有看到bisect应该特别的明显原因。手册页也没有提及此限制。其实没什么大不了的。我主要只是好奇。 最佳答案 查看项目中的一些提交,我看到了MarcelM.Cary(marcel@oak.homeunix.org)的提交他在提交中说(它恰好是关于git-pull但我认为它是相关的)"git