我可以在与活动分支不同的分支中打开文件吗?

时间:2012-10-26 16:19:54

标签: git

假设我的git存储库中有一个分支“work”和一个分支“ideas”。

我通常在“work”分支中处理我的marvelous_file.cpp,但有时我想打开 与此同时,我的“想法”分支中的marvelous_file.cpp。

我不想看到这两个文件之间的区别,而是从“ideas”分支中获取代码片段,然后将它们复制并传递到“work”分支的文件中。

这可能吗?如果没有,我可以将“ideas”中的文件签入“work”,但名称不同吗?

2 个答案:

答案 0 :(得分:8)

您可以使用git show来执行此操作:

git show ideas:marvelous_file.cpp

这将在终端中显示。如果您希望将其作为文件,只需将其传输到文件中,例如:

git show ideas:marvelous_file.cpp > ideas.cpp

答案 1 :(得分:0)

如果您首先在本地提交更改,这些步骤就可以正常运行:

git checkout ideas -- path/to/your/file.txt

将获取所需的文件并替换工作文件夹中的文件。您可以对整个目录或整个工作树执行此操作:

git checkout ideas -- .

将抓取整个工作树

git checkou ideas -- dir/with/cool/stuff

将获取目录的所有内容。

现在你可以

git reset -p

系统地丢弃你不想要的改变。如果已经将这些片段放入您将要处理的文件中,则可能更容易获取所需的片段。