git

博客主要介绍了Git的相关操作,包括分支的查看、切换,忽略文件,git commit -a与git commit -am的区别,以及推送、拉取操作。还针对git pull冲突问题给出了解决办法,如保存本地修改、拉取远程分支、还原暂存区内容、解决文件冲突等。

1、分支

1>远程分支查看 

~/mxnet$ git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
  remotes/origin/nnvm
  remotes/origin/piiswrong-patch-1
  remotes/origin/v0.9rc1

2>本地分支查看

~/mxnet$ git branch
* master

3>分支切换

$ git checkout -b v0.9rc1 origin/v0.9rc1
Branch v0.9rc1 set up to track remote branch v0.9rc1 from origin.
Switched to a new branch 'v0.9rc1'

#已经切换到v0.9rc1分支了
$ git branch
  master
* v0.9rc1

#切换回master分支
$ git checkout master
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.

4>忽略某文件

git checkout filename

2、git commit -a 与git commit -am区别

通常修改一个文件并且将文件提交到本地的分支并且推送到远程服务器的操作如下:

git add .                #将本地修改过的文件且已经追踪的文件添加到本地的暂存区
git commit -m "some str" #将暂存区的代码提交到本地仓库,最后将本地仓库的代码推送到远程服务器端
git push

可以简化为:

git commit -am "some str"    #只能提交已经追踪过且修改了的文件,新增文件就必须使用第一步的命令
git push

3、推送、拉取

$ git push origin dev
$ git pull origin dev

4、git pull冲突 overwritten aborting

错误信息如下:

From github.com:26huitailang/learn-sth-everyday
   7cf57b0..d9f7ae2  master     -> origin/master
Updating 7cf57b0..d9f7ae2
error: Your local changes to the following files would be overwritten by merge:
    liaoxuefeng/awesome-python-webapp/LICENSE
Please, commit your changes or stash them before you can merge.
Aborting

1>保存当前本地修改到暂存区

git stash
git stash list        #查看当前暂存区的文件状态

2>拉取远程分支

git pull origin dev

3>还原暂存区的内容

>git stash pop stash@{1}
>git stash apply stash@{1}

4>解决文件中冲突的的部分 
直接打开文件冲突的文件。

其中Updated upstream 和=====之间的内容就是pull下来的内容,====和stashed changes之间的内容就是本地修改的内容。碰到这种情况,git也不知道哪行内容是需要的,所以要自行确定需要的内容。完成后再执行提交操作。 
会用mergetool的也可以用这个工具去做。

5>删除暂存区列表

git stash clear

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值