Git命令总结和常见问题解决方案

说明

本篇文章是看Pro Git一书按照自己的思维模式对Git命令进行了分类。

一、Git配置

配置Git用户名
git config --global user.name ""
配置Git邮箱
git config --global user.email ""
设置文本编译器
git config --global core.editor
git config --global core.editor "'D:\Notepad++\notepad++.exe' -multiInst -notabbar -nosession -noPlugin '$*'"
差异分析工具
git config --global merge.tool vimdiff
设置git log的提交时间格式
git config --global log.date iso
查看配置信息
git config --list
git config --list --show-origin
查询某项配置设置的值
git config user.email
git config --list --show-origin|grep "user.email"

注意事项:
参数–system、–global和–local依次为针对所有用户的配置、针对当前用户的配置、针对当前git仓库的配置,
如果存在同样的配置优先级从高低为:–local、–global、–system。

二、创建Git仓库的两种方式

初始化当前目录为Git仓库
git init
克隆远程仓库到本地
git clone git@server-name:path/repo-name.git
不使用默认的origin仓库名称来跟着远程仓库,而是使用,其实就是给远程开发起个别名。
git clone git@server-name:path/repo-name.git -o <name>
获取远程服务器上的裸仓库,即复制远程仓库的.git目录以及其中的文件到本地
git clone git@server-name:path/repo-name.git --bare

三、本地仓库与远程仓库

将远程仓库的引用添加到本地仓库中,origin为远程仓库别名
git remote add origin git@server-name:path/repo-name.git
查看本地仓库添加的远程库引用名称
git remote
查看本地仓库添加的远程库引用名称和对应远程仓库URL
git remote -v
查看远程分支详细信息(远程分支列表以及状态、本地分支pull和push对应的远程分支等)
git remote show [远程仓库引用名称]
删除本地仓库中的远程仓库引用名称
git remote rm [远程仓库引用名称]
重命名远程仓库引用名称。注意:之前origin/master访问远程分支,修改后origin-test/master访问远程分支。
git remote rename [原有远程仓库引用名称] [新的远程仓库引用名称]

四、提交

添加文件到暂存区(包括未跟踪文件和已跟踪文件)
git add <file-name>
添加文件到暂存区(只包括已跟踪文件)
git add -u <file-name>
将暂存区中指定文件从暂存区提交到本地Git仓库
git commit -m "commit desc" <file-name>
将暂存区中所有文件从暂存区提交到本地Git仓库
git commit
*跳过暂存区直接提交到本地仓库,相当于git add ;git commit.。注意此命令不会将未跟踪(Untracked files)的文件提交到本地仓库中。
git commit -a -m "commit desc"等同于git commit -am "commit desc"
查看本地Git仓库状态
git status

五、对比

工作区和暂存区的文件不同对比
git diff
暂存区和本地Git仓库文件最后一次提交不同对比
git diff --cached <file-name> 等同于 git diff --staged <file-name>
工作区和本地Git仓库文件最后一次提交不同对比
git diff HEAD <file-name>
比较当branch-a和branch-b两个分支最新一次提交内容的不同,其实比较的是两个提交的差异,应为branch-a和branch-b都是指向最新的一次提交,也可以根据需要指定SHA-1来比较两次提交差异
git diff <branch-a> <branch-b>
查可能存在的空白字符问题
git diff --check <file-name>
过滤掉空白字符的差异
git diff -b <file-name>
查看当前Git可使用以及支持哪些diff插件
git difftool --tool-help
使用指定的diff插件比较文件差异
git difftool --tool=vi

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值