我有一个名为app.js的主分支。我在一个实验分支上对这个文件进行了更改。
我只想将实验中对app.js所做的更改应用到master分支。
我有一个名为app.js的主分支。我在一个实验分支上对这个文件进行了更改。
我只想将实验中对app.js所做的更改应用到master分支。
当前回答
查看github上的文件并从那里取出
这是一种务实的方法,不会直接回答OP,但有些人发现很有用:
如果有问题的分支位于GitHub上,那么您可以使用GitHub提供的许多工具中的任何一个导航到所需的分支和文件,然后单击“原始”查看纯文本,并(可选)根据需要复制和粘贴文本。
我喜欢这种方法,因为它允许您在将远程文件拉到本地计算机之前查看其完整性。
其他回答
如果您想要来自特定提交(任何分支)的文件,请说06f8251f
git checkout 06f8251f path_to_file
例如,在Windows上:
git checkout 06f8251f C:\A\B\C\D\file.h
补充VonC和chhh的答案:
git show experiment:path/to/relative/app.js > app.js
# If your current working directory is relative, then just use:
git show experiment:app.js > app.js
or
git checkout experiment -- app.js
查看github上的文件并从那里取出
这是一种务实的方法,不会直接回答OP,但有些人发现很有用:
如果有问题的分支位于GitHub上,那么您可以使用GitHub提供的许多工具中的任何一个导航到所需的分支和文件,然后单击“原始”查看纯文本,并(可选)根据需要复制和粘贴文本。
我喜欢这种方法,因为它允许您在将远程文件拉到本地计算机之前查看其完整性。
或者,如果您想要其他分支的所有文件:
git checkout <branch name> -- .
要从另一个分支恢复文件,只需使用工作分支中的以下命令:
git restore -s my-other-branch -- ./path/to/file
-s标志是source的缩写,即要从中提取文件的分支。
(所选的答案信息量很大,但也有点令人难以理解。)