当前位置:   article > 正文

git合并单个文件到一个分支上_git test分支只合并一个文件到dev分支

git test分支只合并一个文件到dev分支

日常开发中,可能会遇到需要将develop分支最后一次提交(最后一次提交会包含多个文件)某一个文件(或者多个文件,)代码合并到master分支,进行发布。如果直接用marge 就会将最后一次提交的所有文件全部合到master不符合要求。
例如:将test分支上UserEntity.java 文件合并到 develop分支上
解决方案一:

1. 先在test进行一次提交,然后切换到 develop分支
//                                              -- 用于分割文件,这里使用文件的绝对路径 ,如果文件在项目的根路径下,直接写文件名即可										
2. git checkout  --patch  test   -- D:/project/test/src/com/ratel/entity/UserEntity.java

ratel@DESKTOP-HRDC9NJ MINGW64 /d/project/test (develop)
$ git checkout  --patch  test   -- D:/project/test/src/com/ratel/entity/UserEntity.java
diff --git b/src/com/ratel/entity/UserEntity.java a/src/com/ratel/entity/UserEntity.java
index 847fcda..f2591f0 100644
--- b/src/com/ratel/entity/UserEntity.java
+++ a/src/com/ratel/entity/UserEntity.java
@@ -15,4 +15,5 @@ public class UserEntity {
     private String hobby;
     private String phone;
 //    测试git
+    //测试git01
 }
Apply this hunk to index and worktree [y,n,q,a,d,e,?]? y  //如果确定没问题 一直输入y即可,如果有问题输入n 即可中止操作。


ratel@DESKTOP-HRDC9NJ MINGW64 /d/project/test (develop)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

可能会出现文件如果项目中存在一个 test 文件目录(和分支同名的文件目录)就需要使用 文件前加 – 进行区分,否则会报如下错误:

$ git checkout  --patch  test   src\com\ratel\entity\UserEntity.java
fatal: ambiguous argument 'test': both revision and filename
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
  • 1
  • 2
  • 3
  • 4

解决方案二:

1. 先在test进行一次提交,然后切换到 develop分支
2. 如果只是简单的将test分支的文件UserEntity.java copy到develop分支上,直接执行下面命令,(这样操作会覆盖掉develop分支同名文件,develop分支UserEntity.java 做的更改将会被覆盖)

git checkout    test   -- D:/project/test/src/com/ratel/entity/UserEntity.java
  • 1
  • 2
  • 3
  • 4
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/703939
推荐阅读
  

闽ICP备14008679号