在 git 中进行签出比输入完整提交的哈希 ID 更简单
我目前正在使用提交的完整哈希 ID 检查其他提交:
git checkout b56da2b535106d6df6d7caebfd455dd65b70eaf6
但这有点无聊。难道就没有其他方法可以做到吗?也许只输入哈希值的第一个字母或其他什么?我有单独阅读这些内容的想法,但我不太确定。
谢谢
Ed
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
是的,您可以使用任何明确的哈希前缀。另外,如果您尝试通过某种方案遍历历史记录,诸如
HEAD^^^
(即当前 HEAD 的曾祖父母)之类的东西就可以工作。请参阅git 帮助修订
了解更多指定这一点的方法。但我通常只是使用 gitk 的复制+粘贴。
Yes, you can use any unambiguous prefix of the hash. Also, if you are trying to go through the history by a certain scheme, things like
HEAD^^^
(i.e. the great grandparent of the current HEAD) work. Seegit help revisions
for more ways to specify this.But I usually simply use copy+paste from gitk.
当我需要在命令行上获取任何内容的完整 sha1 时,我通常会这样做:
通过在 xterm 或 gnome-terminal 中双击 sha1 将其复制到剪贴板。
通过在终端窗口上单击鼠标中键或通过程序将 sha1 粘贴到命令行上,如下所示:
$ git checkout `p`
其中 "p " 是我有的一个 shell 脚本:
你可以从 Simon Tatham(以 putty 闻名)那里获取 xcopy 这里。
我曾经使用 xclip 进行粘贴,但由于某种我不记得的原因我停止使用它。
This is what I normally do when I need to get the full sha1 of anything on the commandline:
Copy the sha1 to the clipboard by double clicking it in xterm or gnome-terminal.
Get the sha1 to be pasted on the command line either by middle-clicking on the terminal window, or through a program, like so:
$ git checkout `p`
Where "p" is a shell script I have:
You can get xcopy from Simon Tatham (of putty fame) here.
I used to use xclip to do the pasting, but I stopped using it for some reason I could not remember.
有无数种不同的方法来指定 git-rev-parse,包括一些有趣的,例如使用提交消息的
:/message
。There are a bazillion different ways to specify commits listed in the "SPECIFYING REVISIONS" section of git-rev-parse, including some interesting ones like
:/message
that uses the commit message.