git平时遇到的问题


git平时遇到的问题

git pull 会将未提交的修改代码覆盖怎么办

处理的方式非常简单,主要是使用git stash命令进行处理,分成以下几个步骤进行处理。

$ git stash  		#先将本地修改存储起来(暂存修改)
$ git stash list	#可以看到保存的信息:其中stash@{0}就是刚才保存的标记
$ git pull
$ git stash pop 	#还原暂存的内容

系统提示如下类似的信息:
Auto-merging c/environ.c
CONFLICT (content): Merge conflict in c/environ.c
意思就是系统自动合并修改的内容,但是其中有冲突,需要解决其中的冲突。

解决文件中冲突的部分
打开冲突的文件,会看到类似如下的内容:
git冲突内容
其中Updated upstream 和=====之间的内容就是pull下来的内容,====和stashed changes之间的内容就是本地修改的内容。碰到这种情况,git也不知道哪行内容是需要的,所以要自行确定需要的内容。

解决完成之后,就可以正常的提交了。

怎么将分支上的一个单文件合并到主分支上

$git checkout master #切换到主分支
$git checkout --patch 分支名称 要合并的文件路径 #选择要合并的文件
/* 提交文件 */
$git add -A 文件路径
$git commit -m "注释"
$git push
# 如果不想合并只是测试  一定要回滚回来
$git reset --hard origin/master 到上一个版本

将master的内容更新到分支上

$git add commit -m "备注"    # 先提交修改的内容
$git checkout master		# 切换到master
$git pull				   # 将远程的master代码pull到本地
$git checkout dev		    # 切换到dev分支下
$git merge master     		# 合并master到dev分支
# 如果在合并的过程中,提示Test.java文件出现冲突了,手动修改一下这个文件,修改成自己想要内容;如果没有出现冲突,直接跳到第八步
$git add Test.java
$git commit -m "merge master"
$git push origin dev

版本回退

$git log --pretty=oneline  # 查看提交历史
$git reset --hard 版本号   # 进行版本回退
// 或者用这个
$git reset --hard HEAD^  # 返回上一个版本
$git reflog  	# 查看每一条命令
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值