问题标签 [git-rev-list]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
250 浏览

git - 提交时提升版本

我有一个使用 GIT 的 php 项目,并且有一个名为“version”的文件,里面有“1”。我希望当我提交时数字会增加。我在这个脚本中使用了 git hook 功能:

num=$(cat version) num=$(expr 0$num + 1) echo $num > version git add -u version

一切正常,除了当我检查 ide(phpstorm)时,文件保持“蓝色”(未同步),所以如果我单击提交,我会看到文件“版本”已修改。

0 投票
2 回答
715 浏览

git - 列出 master 后面的所有远程分支

除了 master 之外,我在中央存储库中有一个功能分支的垃圾。我的主人是最新的。现在,我想知道落后于我的主分支的分支列表。我知道 github/bitbucket 中的单个分支选择具有图形视图。但是,在这里我有 50 到 60 个功能分支要比较。领先于师父的少,跟上师父的少,落后于师父的少。如何将分支列表固定到单个文件?

注意:我正在使用 bitbucket

提前谢谢你。

0 投票
1 回答
1125 浏览

git - 在 git 存储库的历史记录中查找大文件失败

由于历史上有一些大文件,我的存储库非常大。为了查找大文件并删除它们,我正在执行:

结果是这样的:

为了找到最大文件的路径,我运行:

结果是:

但是,当我git log在这个文件上运行时:

没有显示日志。此外,每当我尝试通过以下方式从历史记录中删除二进制文件时:

我收到:

有任何想法吗?

0 投票
1 回答
1315 浏览

git - 查看 git 提交列表的顺序

我有一个提交哈希列表,我需要按时间顺序排列它们。

我以为我可以做到,但即使我在命令行上指定了提交git rev-list,它仍坚持向我显示所有提交。

有没有办法让 git 做到这一点,还是我必须结合git rev-listand grep

谢谢!

0 投票
1 回答
57 浏览

git - Git - 跨分支直到某个日期的最后一次提交

我是一名教师,我需要处理最后发送的提交,直到截止日期。

如果学生团队坚持下去,我会知道该怎么做master

这将搜索当前分支的历史记录。但是它们的分支结构非常复杂,它们甚至不会合并彼此的分支。所以我可能会从任何分支获取最新提交。

如何从整个存储库中获取直到某个日期的最新提交?

0 投票
1 回答
79 浏览

git - Git - 如何获取远程服务器上所有提交的列表

我想每隔几分钟轮询一次 github 以获取最后 10 次提交(提交哈希和源分支)。

目前我正在做

git -C /path/to/local/repo rev-list --remotes

然后对于每个尝试获取分支名称的哈希:

git -C /path/to/local/repo branch -r --contains #commit-hash#

然后用“/”分割并取最后一个组件。

但它似乎并不总是能获取所有最新的提交。

有没有更好更简单的方法来做到这一点?

0 投票
1 回答
75 浏览

git - 是否可以检查是否可以使用远程命令从同一仓库中的另一个 git 标签访问 git 标签?

是否可以通过远程 git 命令检查是否可以从 repo 中的另一个 git tag/commit 访问 git tag/commit,即无需克隆代码。

我可以使用 git rev-list 或 git merge-base 在本地完成。我尝试使用 git ls-remote,但无法这样做。

0 投票
1 回答
10751 浏览

git - 关于 git rev-list 的困惑

我想知道与 100 submit in branch 相关的提交 ID dev。(例如:)git rev-list --reverse --branches=dev --date-order --count <commit-id> == 100

得到 100 次提交的是1f345e80fba518c72dec7f2e02da5da12be5810f

但是,当我尝试验证有关此 commit-id ( 1f345e80fba518c72dec7f2e02da5da12be5810f) 的 rev-number 时,结果显示:rev number is 98 !!!

所以我尝试找出缺少哪个 2 提交:

显然,缺少的 2 个提交 ID 是:

根据git show <commit-id>,并没有什么奇怪的。这两个提交是由同一个人提交的。但是这个人在前 100 次提交中提交了 10 次。

git rev-list问题吗?

0 投票
2 回答
993 浏览

git - 以机器可读格式获取 git revlist 的输出

我正在使用git rev-list --all --format="%H%n%B"检索 git 存储库的所有(可访问的)提交。

我需要能够将生成的输出解析为提交哈希原始正文的单独字段。

-> 是否有任何可靠的方法来格式化输出以便可以对其进行解析?

虽然提交哈希是固定长度的,但原始正文中的行数未知,需要某种分隔符。我曾考虑将输出包装在 xml 之类的标签中,例如--format="<record>%H%n%B</record>",但这有一个明显的缺点,即</record>如果将字符串插入原始正文中,则会破坏解析器。当然,我可以使分隔符更复杂,以降低有人将它们插入提交消息的风险,但我真正需要的是一个在技术上不能成为原始正文一部分的字符。我尝试使用 ASCII 控制字符作为记录分隔符“\x1F”。但是,它并没有按预期插入输出,而是按原样打印。


根据torek的回复(谢谢!)我能够创建一个小的 python 函数:

0 投票
2 回答
705 浏览

git - 如何使用 libgit2sharp 获取后面/前面的提交数量?

可以使用git rev-list命令获取后面/前面的提交数。我正在尝试使用libgit2sharp库来实现相同的目标,但该库没有完整记录,所以我找不到如何去做。

我正在寻找一个使用libgit2sharp.