我想知道是否已经可以从GIT中给定分支的给定文件中获得给定范围的行?我正在研究相当大的项目,在切换到新分支后重新加载整个解决方案会持续几秒钟,但有时我需要查看当前文件的历史/版本,例如:主。是否可以不切换到主人?
答案 0 :(得分:2)
您可以使用git cat-file blob feature/my-feature:./README
打印内容:
sed
然后传递给例如git cat-file ... | sed -n '10,20p'
以获取行范围:
{{1}}
答案 1 :(得分:2)
从特定版本中的特定文件中获取特定的一组行并不是那么容易,但是非常很容易获得整个文件:
$ git show rev:path
将其打印到标准输出(然后您可以根据需要重定向或过滤)。 path
参数相对于树的顶层,无论您在工作树中的哪个位置,除非(在Zbynek Vyskovsky - kvr000's answer中)您在前面使用./
。例如,要查看文件dir / README的第三版本:
$ git show HEAD~3:dir/README
请注意,git show
会绕过任何涂抹过滤器(更像是低级对应的git cat-file
)。