10 如何在Git中查看文件历史记录? 通过Subversion,我可以使用TortoiseSVN来查看文件的历史记录/日志。 如何使用Git做到这一点? 只需查找特定文件的历史记录,然后即可比较不同版本。 132 git timeline git-diff git-log revision-history
6 如何只获取一个分支的提交历史记录? 假设我my_experiment从创建了一个新分支, master并对进行了几次提交my_experiment。如果执行git logwhen时my_experiment,我会看到对该分支所做的提交,而且还会看到创建master该my_experiments分支之前所做的提交。 我发现查看所有对该my_experiments分支的提交的历史非常有用,直到它到达该分支的创建为止-实际上是该分支的真实历史。否则,在通过日志查看提交内容是否在my_experiments分支上时,我不清楚。 有没有办法用Git做到这一点? 128 git git-log
11 如何获取使用Git在两个日期之间发生的所有提交之间的差异? 还是只是两个日期之间发生的所有提交?在SVN中,您可以执行以下操作 svn diff -r{date}:{date} 去做吧!我似乎找不到等效的Git。 具体来说,我正在研究编写脚本以发送每日电子邮件,其中包含当天提交的所有代码以及由谁提交。 116 git diff git-diff git-log
5 git-log中的颜色 运行时git log --decorate --pretty=oneline,输出中将包含(HEAD, refs/published/master, master)带有颜色的条目。 我的gitconfig中也有以下内容: [color "branch"] current = yellow reverse local = yellow remote = green 在执行以下自定义格式时,如何复制这些颜色? git log --decorate --stat --graph --pretty=format:"%d %Cgreen%h%Creset (%ar - %Cred%an%Creset), %s%n" 106 git git-log
2 如何阅读git日志图 在git社区书中,它说 您可以做的另一件有趣的事情是使用'--graph'选项可视化提交图,如下所示: $ git log --pretty=format:'%h : %s' --graph * 2d3acf9 : ignore errors from SIGCHLD on trap * 5e3ee11 : Merge branch 'master' of git://github.com/dustin/grit |\ | * 420eac9 : Added a method for getting the current branch. * | 30e367c : timeout code and tests * | 5a09431 … 92 git git-branch git-log
4 为什么git log可能不显示移动文件的历史记录,我该怎么办? 我使用git mv,used 和重命名了几个文件,git stash快速浏览了HEAD(不进行更改),然后又git stash pop重新取回了很多文件。我的举动已从提交列表中消失,因此我用它们进行git rm了重新命名,并且提交消息声称git发现该重命名为重命名。所以我不再想了。 但是现在,提交后,我无法了解已移动文件的历史记录!这是git关于相关提交的内容: ~/projects% git log --summary commit de6e9fa2179ae17ec35a5c368d246f19da27f93a Author: brone Date: Wed Dec 8 22:37:54 2010 +0000 Moved R_DebugUI into runtime delete mode 100644 test/R_DebugUI_iOS.h delete mode 100644 test/R_DebugUI_iOS.m create mode 100644 system/runtime/src/R_DebugUI_iOS.h create mode 100644 system/runtime/src/R_DebugUI_iOS.m <<snip older commits>> ~/projects% 我现在正在尝试获取这些移动文件之一的历史记录,因此我可以查看一个旧版本,但是却没有任何有用的东西: ~/projects/system/runtime/src% git … 90 git history dvcs rename git-log
1 为什么“ git log-foo”对删除的文件foo不起作用? 我的存储库进行了以下更改: ...一些无关的提交... 提交foo包含100行内容的新文件 ...中间的提交,其中一些涉及foo... 将内容插入foo现有文件的顶部bar并git rm foo进行相同的提交 ...更多无关的提交... 现在,我想查看已删除文件的日志foo。我读过的所有内容(包括SO内容)都说我应该能够git log -- foo,但是该命令不会产生任何输出。 如果我发现foo可以删除的提交,可以git log 1234abcd -- foo查看它的日志,所以我认为这foo不是问题所在。还要注意git merge-base HEAD 1234abcd输出1234abcd[...],所以我认为应该证明提交是可以到达的HEAD。请注意,foo我的工作树中没有文件(显而易见,因为它已被删除)。在OS X上使用Git 1.7.1.1。 为什么git log -- foo对我不起作用,我该如何解决?谢谢! 89 git git-log
4 Git:如何列出此分支上的提交,但不列出合并分支上的提交 假设您的git commit历史记录如下: A---B---C---D---E---F master \ / X---Y---Z topic 可以让git只列出master,AF上的提交吗?换句话说,如果提交在合并的分支上,则我不希望其显示。 89 git branch git-branch git-log
2 查看git日志没有合并提交 我正在尝试查看特定用户的提交,并希望从输出中删除该用户完成的所有合并。我该怎么办? 我可以使用来检查用户的提交git log --author=<name>,但不能在输出中删除合并提交。 PS:合并冲突不会在所讨论的回购工作流中发生,所有分支在合并到母版之前都已重新建立基础,因此可以安全地从输出中删除合并提交,并且类似地,两个要素分支也不会彼此合并可能性。 88 git git-log
1 git如何记录-自计数? 我有一个仅包含几次提交的简单测试存储库,并且想查看过滤了日期和时间的日志: $ git log --author =“ automatix” --since =“ 2013-01-30” --pretty-测试 提交ea0719bef142659fa561c9d040b2120012ed0184 日期:2013年1月31日星期四02:03:12 +0100 提交ab4a8387bc4d9bdb4f67212df77eb1fc3d8b6304 日期:2013年1月31日星期四01:59:11 +0100 提交a0b027beba2cd03571bb9475b9db9542f8efe990 日期:2013年1月31日星期四01:50:38 +0100 提交add77c8fe2ba9254c11b98e14facede3420dc51c 日期:2013年1月31日星期四01:48:34 +0100 提交e6e323c05d37c74fcabeb9186b95c0d49b862e6f 日期:2013年1月31日星期四01:46:27 +0100 提交8c286391e54d3fc1e210950b1320fd6f013a8f84 日期:2013年1月31日星期四01:41:27 +0100 提交9c880595e57f717383796fa2940f41f0f42f7e2a 日期:2013年1月31日星期四01:38:17 +0100 提交a95527f36a533e1ecba1aadceea31a9dcbe1a8db 日期:2013年1月31日星期四01:30:00 +0100 首次选择的提交a95527f36a533e1ecba1aadceea31a9dcbe1a8db来自2013-01-30 01:30:00。选择了8个提交: $ git log --author =“ automatix” --since =“ 2013-01-30” --format = oneline-测试| 厕所 … 85 git git-log
3 Git在日志中显示所有分支(但不隐藏) 我有一个Git别名,扩展为: git log --graph --oneline --all --decorate 据称,man git log有两个可疑的选择:--not和--branches; 但我无法使其正常运行。 我应该如何编辑以隐藏藏匿处? 仅供参考:根据已接受的问题和评论,我的.gitconfig别名现在看起来像这样: [alias] l = log --branches --remotes --tags --graph --oneline --decorate --notes HEAD 84 git git-log git-stash
1 我该如何打印当前分支以外的其他分支的日志? 我正在进行一些更改。更改分支是很痛苦的事情,因为某些文件已被进程锁定,因此要更改分支,我必须先停止所有有锁的进程,然后再stash更改,然后再签出另一个分支以查看其日志。 是否可以查看其他分支的日志而不必将其签出? 82 git branch git-checkout git-log git-stash
3 git log仅显示一个提交ID 我需要一些帮助。可能只显示一个提交ID?由于git log -3显示1-3的日志,所以我只想显示3。什么可能的命令将与其匹配? 我使用命令 git log -3 --pretty=format:"%h" 结果是 ffbef87 cf0e073 1c76c5d 我只想显示1c76c5d。 77 git git-commit git-log
5 将文件和目录以及提交历史记录移到子目录中 如何将目录和文件以及提交历史记录移到子目录? 例如: 源目录结构: [project]/x/[files & sub-dirs] 目标目录结构: [project]/x/p/q/[files & sub-dirs] 77 git git-log