在不同的Git分支中查看文件,而不改变分支
有没有可能在git分支中打开文件而不检出分支? 怎么样?
基本上我想能够在我的github页面分支中打开一个文件,而不必一直切换分支。 我不想修改它,只想查看它。
这应该工作:
git show branch:file
其中分支可以是任何参考(分支,标签,HEAD,…), 文件是文件的完整path。 要导出它,你可以使用
git show branch:file > exported_file
你还应该看看VonC对一些相关问题的回答:
- 如何从Git中的特定版本检索单个文件?
- 如何从另一个分支获取一个文件
更新2015-01-19:
现在你可以用git show a1b35:./file.txt
来使用相对path。
git show somebranch:path/to/your/file
你也可以做多个文件并将它们连接在一起:
git show branchA~10:fileA branchB^^:fileB
您必须提供文件的完整path。
如果你想获得本地目录中的文件(只恢复一个文件),你可以签出:
git checkout somebranch^^^ -- path/to/file
一个简单的,新手友好的方式来查看文件: git gui browser <branch>
,让您探索任何文件的内容。
它也在git gui
的File菜单中。 大多数其他更高级的GUI包装(Qgit,Egit等)也提供浏览/打开文件。
如果您使用的是Emacs,您可以键入Cx v ~
以查看您正在编辑的文件的不同版本(标签,分支和哈希值都可以工作)。
$ git status your-file.txt
这提供了你的文件来自哪个分支
$ git status / file-directory
这提供了当前分支中不存在的文件。 即“新文件:myfile.txt”提供了它不是当前git分支的一部分。