git命令总结

112 篇文章 1 订阅

git init 初始化git仓库

git add . 将所有的代码添加到track(git add -A 全部添加,git add -i 交互式添加),取消所有添加: git reset HEAD

git log 查看记录

git reflog 查看所有历史log(常用于reset后,恢复)

git status 查看当前修改的状态

git diff <hash> <file> 查看different(例: git diff HEAD xxx.c)

git commit -m "coment" 提交版本,git commit --amend  修改刚刚提交的版本

git reset <hash> 回到某一版本,但不修改文件,只改log和文件的stage

git reset --hard <hash> 回到某一版本,包括文件

git help xxx 查看帮助(例:git help branch)

git branch xxx创建分支,git branch查看所有分支 ,git checkout master  切到主分支,git checkout -b xxx常见并切到某个分支


设置颜色:

  1. alec@PC$ git config --global color.status auto  
  2. alec@PC$ git config --global color.diff auto  
  3. alec@PC$ git config --global color.branch auto  
  4. alec@PC$ git config --global color.interactive auto  



这个可视化工具叫做Meld, 非常方便. sudo apt-get install meld 就可以安装.


安装以后Git使用命令:

git rebase xxx

这时候会如果有冲突系统就会提示出现conflict, 然后可以调用git mergetool, 系统会自动打开meld.

 

编辑完毕以后save&quit, 然后运行:

git rebase --continue

 

merge工作就完成了.

 

怎么让git diff命令也使用这个工具呢?

配置git :

<span style="font-size: 16px;">git config --global diff.external meld</span>



比较修改的文件:

<span style="font-size: 16px;">git diff HEAD^ filename

</span>

其中 HEAD^ 是指上一个版本。


Meld 会被叫起来,但是会说参数错误"Wrong number of arguments (Got 7)"。原因是GIT 会送7 个参数给Meld ,但是Meld 只需要两个参数,两个需要比较的档名。所以不能直接用Meld ,必须要做一点小修改:

在自己的的目录下建立一个git-meld.sh 的script:

vi ~/git-meld.sh


加入以下内容:

#!/bin/sh
meld $2 $5


改变档案的属性:

chmod 777 ~/git-meld.sh


然后把external diff 改成这个shell script :

git config --global diff.external ~/git-meld.sh

 

大功告成! 

想恢复的话,修改~/.gitconfig文件,删掉对应的项即可。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值