我有一个名为app.js的主分支。我在一个实验分支上对这个文件进行了更改。

我只想将实验中对app.js所做的更改应用到master分支。


当前回答

要从另一个分支签出文件,只需简单的一行命令:

git checkout branch C:\path\to\file.cs

如果您想要多个文件

git checkout branch C:\path\to\file1.cs C:\path\to\file2.cs

其他回答

git checkout branch_name file_name

例子:

git checkout master App.java

如果分支名称中有句点,则此操作将不起作用。

git checkout "fix.june" alive.html
error: pathspec 'fix.june' did not match any file(s) known to git.

查看github上的文件并从那里取出

这是一种务实的方法,不会直接回答OP,但有些人发现很有用:

如果有问题的分支位于GitHub上,那么您可以使用GitHub提供的许多工具中的任何一个导航到所需的分支和文件,然后单击“原始”查看纯文本,并(可选)根据需要复制和粘贴文本。

我喜欢这种方法,因为它允许您在将远程文件拉到本地计算机之前查看其完整性。

git checkout master               -go to the master branch first
git checkout <your-branch> -- <your-file> --copy your file data from your branch.

git show <your-branch>:path/to/<your-file> 

希望这对你有所帮助。如果你有任何疑问,请告诉我。

对于所有喜欢避免未知的git命令或害怕破坏某些东西的人,还有一个简单的解决方案:

检查文件所在的分支将该文件复制到计算机上的其他位置签出到文件需要到达的分支将文件粘贴到位

可能需要比相应的git命令更长的时间。。。但它有效且易于理解

git checkout <branch_name> -- <paths>

更多信息