GIT 如何从另一分支合并特定的文件
- 先检验当前分支与要合并分支通用文件的差异(要合并的分支必须要全部commit)
- 拉出要“合并某分支文件有差异”的所有文件(会覆盖当前分支的文件,在提交前请手动合并差异文件) git checkout 分支名称 多个指定的文件名
- 添加并commit到当前分支 git commit -a -m '注释 合并其他分支的某些文件 和合并分支提交时的说明信息'

F:\Test>git init #初始化
Initialized empty Git repository in F:/Test/.git/
F:\Test>git add . #添加文件
F:\Test>git commit -m 'init' #提交
[master (root-commit) 0b9520a] 'init'
2 files changed, 4 insertions(+)
create mode 100644 dev.txt
create mode 100644 test.txt
F:\Test>git checkout -b dev --新建并切换分支
Switched to a new branch 'dev'
F:\Test>git diff #更改文件,比较文件差异
WARNING: terminal is not fully functional
diff --git a/dev.txt b/dev.txt
index d62bb90..a21f2e9 100644
--- a/dev.txt
+++ b/dev.txt
@@ -1,2 +1,5 @@
init
-dev-edit
\ No newline at end of file
+dev-edit
+
+
+dev-edit-2015-08-05
\ No newline at end of file
F:\Test>git commit -a -m 'edit-dev' #提交
[dev 9f224fd] 'edit-dev'
1 file changed, 4 insertions(+), 1 deletion(-)
F:\Test>git checkout master #切换到主分支
Switched to branch 'master'
F:\Test>git diff #更改文件,并对比差异
WARNING: terminal is not fully functional
diff --git a/dev.txt b/dev.txt
index d62bb90..719fd72 100644
--- a/dev.txt
+++ b/dev.txt
@@ -1,2 +1,4 @@
init
-dev-edit
\ No newline at end of file
+dev-edit
+
+edt-master-2018-08-05
\ No newline at end of file
F:\Test>git commit -a -m 'edit-master-dev' #提交并保存已更改的文件
[master dbeec1c] 'edit-master-dev'
1 file changed, 3 insertions(+), 1 deletion(-)
F:\Test>git status
On branch master
nothing to commit, working directory clean
F:\Test>git checkout dev dev.txt #在master中合并 并覆盖dev分支中的dev.txt文件
F:\Test>git status #当前master分支状态,因为dev.txt是直接从dev分支直接覆盖而来,所以可能需要手动合并冲突
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: dev.txt
F:\Test>git diff
WARNING: terminal is not fully functional
- (press RETURN)
F:\Test>
F:\Test>git diff dev.txt #查看dev.txt跟当前分支的差异,因为已经提交到暂存区,所以这里没有显示出差异
WARNING: terminal is not fully functional
- (press RETURN)
F:\Test>git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: dev.txt
F:\Test>git citool #使用Gui查看差异

GIT 如何从另一分支合并特定的文件的更多相关文章
- git学习笔记06-创建分支合并分支-比svn快多了,因为只有指针在改变
一开始git只有一条时间线,这个分支叫主分支,即master分支. HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支. 每次提交,mas ...
- git的工作流程(分支合并)
git支持很多种工作流程,我们采用的一般是这样,远程创建一个主分支,本地每人创建功能分支,日常工作流程如下: 去自己的工作分支$ git checkout work 工作.... 提交工作分支的修改$ ...
- git的使用理解(分支合并的使用理解,多人编程的解决方案)
本文主要记录了对git日常使用的一些理解,主要是对git分支的一些感悟. git强大的版本控制系统,之前也使用过SVN,感觉上git对于多人开发的版本控制更加强大,特别是最近对git分支的使用,更是深 ...
- Git合并特定commits 到另一个分支
https://ariejan.net/2010/06/10/cherry-picking-specific-commits-from-another-branch/ http://blog.csdn ...
- git总结三、关于分支下——团队合作中最重要的合并分支
合并分支是团队合作开发中常见的操作,这里涉及到两个命令:git merge 和 git rebase 下面来好好说一下git merge和git rebase都是怎样工作的 一. 1.新建一个空目录并 ...
- git分支合并的冲突解决方法
本次学习的是解决不同分支提交的内容不同导致合并冲突,及怎样解决冲突. 基本命令: git log --graph查看分支合并图 具体步骤: 新建分支branch1,并修改rea ...
- git 强制覆盖,分支合并
强制合并 git fetch --all && git reset --hard origin/master && git pull 合并代码 git commit - ...
- NO.A.0006——Git在IntelliJ IDEA中的使用/创建项目并推送到GitHub仓库/分支管理及分支合并
一.在IntelliJ IDEA中使用Git: 1.在IDEA下创建项目并编写一个main方法的工程: 在IDEA下新建一个Project IDEA-->新建一个Project-->Fil ...
- git冲突解决、线上分支合并、luffy项目后台登陆注册页面分析引入
今日内容概要 git冲突解决 线上分支合并 登陆注册页面(引入) 手机号是否存在接口 腾讯云短信申请 内容详细 1.git冲突解决 1.1 多人在同一分支开发,出现冲突 # 先将前端项目也做上传到 g ...
随机推荐
- 马士兵hadoop第二课:hdfs集群集中管理和hadoop文件操作
马士兵hadoop第一课:虚拟机搭建和安装hadoop及启动 马士兵hadoop第二课:hdfs集群集中管理和hadoop文件操作 马士兵hadoop第三课:java开发hdfs 马士兵hadoop第 ...
- SPI中的极性CPOL和相位CPHA
详解SPI中的极性CPOL和相位CPHA SPI由于接口相对简单(只需要4根线),用途算是比较广泛,主要应用在 EEPROM,FLASH, 实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间 ...
- Programming internal SRAM over SWD
https://github.com/MarkDing/swd_programing_sram // // Copyright (c) 2013 SILICON LABORATORIES, INC. ...
- ubuntu中chown设置文件权限
参考文献: http://yanwen.org/doc/chown.html http://www.cppblog.com/deercoder/articles/110129.html 可以通过ls ...
- AngularJS的Hello World
本篇体验AngularJS的Hello World,虽然简单,但体现了AnuglarJS的一些重要概念. 大致思路是这样的: ● 通常通过为hmtl元素添加AngularJS独有的属性来实现一些功能, ...
- 在ASP.NET MVC控制器中获取链接中的路由数据
在ASP.NET MVC中,在链接中附加路由数据有2种方式.一种是把路由数据放在匿名对象中传递: <a href="@Url.Action("GetRouteData&quo ...
- 利用进程ID获取主线程ID
利用进程ID获取主线程ID,仅适用于单线程.多线程应区分哪个是主线程,区分方法待验证 (1)好像可以用StartTime最早的,不过通过线程执行时间不一定可靠,要是在最开始就CreateThread了 ...
- Windows Phone本地数据库(SQLCE):7、Database mapping(翻译)
这是“windows phone mango本地数据库(sqlce)”系列短片文章的第七篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...
- Java 获取客户端IP
像移动网关一样,iisforward这个ISAPI过滤器也会对request对象进行再包装,附加一些WLS要用的头信息.这种情况下,直接用request.getRemoteAddr()是无法取到真正的 ...
- Linux学习16-CentOS安装gitlab环境
前言 在学习Gitlab的环境搭建之前,首先需要了解Git,Gitlab,GitHub他们三者之间的关系 Git 它是一个源代码版本控制系统,可让您在本地跟踪更改并从远程资源推送或提取更改. GitH ...