3 回答
TA贡献1846条经验 获得超7个赞
我不确定是否有一种方法可以跨修订的提交获取文件的所有版本。但是,reflog将包含有关较早版本的信息,您可以手动提取它们。下面是一个示例。
这是我的第一次承诺
echo "a" > a.txt && git add a.txt && git commit -m "Version 0"
之后,再进行一些修改。
% echo "aa" > a.txt && git add a.txt && git commit --amend -m "Version 1"
% echo "aaa" > a.txt && git add a.txt && git commit --amend -m "Version 2"
% echo "aaaa" > a.txt && git add a.txt && git commit --amend -m "Version 3"
% echo "aaaaa" > a.txt && git add a.txt && git commit --amend -m "Version 4"
虽然我的日志只有一个条目
%git log --oneline a8d6c39版本4
我的reflog拥有一切
% git reflog master
a8d6c39 master@{0}: commit (amend): Version 4
cf87b8f master@{1}: commit (amend): Version 3
c45a91e master@{2}: commit (amend): Version 2
63c7f5a master@{3}: commit (amend): Version 1
f2b3336 master@{4}: commit (initial): Version 0
因此,如果您想查看版本4,版本3等文件的外观,可以执行此操作
% git show a8d6c39:a.txt
aaaaa
% git show cf87b8f:a.txt
aaaa
% git show c45a91e:a.txt
aaa
% git show 63c7f5a:a.txt
aa
% git show f2b3336:a.txt
a
通常,即使您是唯一的开发人员,连续修改的“过程”也是不好的。您应该做的是一次性的事情,以纠正上一次提交的错误。
TA贡献1963条经验 获得超6个赞
我没有真正得到这个问题,所以有一些解决方案:
要查看特定文件的所有提交,请执行以下操作: git log --follow filename。
要签出旧版本,请在此处找到答案
- 3 回答
- 0 关注
- 681 浏览
添加回答
举报