常用git命令使用总结

之前做项目代码管理的时候,基本都是使用svn,很少用git,本是就算接触github也是使用git的可视化工具,比如ToitorseGit等,总之就是很少使用git命令来进行代码管理就是了,现在有这方的需求,所以在此总结下git的命令行使用。当然这篇文章也就是纯粹的总结使用,如果要看git通俗一点的原理介绍并借此理解git命令行的使用,请参考这篇文章Git版本控制软件结合GitHub从入门到精通常用命令学习手册,的确写的很漂亮,也很通俗易懂,如果没有基础的童鞋,也建议先看这篇文章。

1、基本配置

配置用户名

git config --global user.name yourname

配置用户邮箱

git config --global user.email youremai@163.com

查看配置的用户名

git config user.name

查看配置的邮箱

git config user.email

2、常用git命令

这里的常用命令,但然是指我在具体开发中可能会常用到的命令了。但然了,之后也可能有其它命令会在这里补充,有童鞋觉得还有些常用命令的也可以留言,我确认后一并补充也可以哈。

2.1、初始化本地git仓库

可通过git init初始化目录为一个本地的git仓库,这时候会创建一个默认的master分支(没有git commit快照前,git branch看不到这个分支),
git init会在本地创建一个.git文件目录,所有的本地快照数据就是放在这个目录的

可通过git clone来克隆一个远程仓库,使用的命令为

git clone [url]

2.2、回撤操作

当本地修改了代码,但是后面觉得没有修改的必要,想同步git服务器代码时,使用回撤操作

git checkout + 需要恢复的文件名

当通过git add已经将文件添加到了缓存队列,git checkout就没用了,想要撤销操作就得先将文件取消缓存

git reset HEAD + 要取消缓存的文件名

然后再执行

git checkout + 文件名

如果想回撤的文件已经commit了,则可以通过一下命令来取消文件的快照,将其归入缓存的状态

git revert HEAD   //撤销前一次 commit 

2.3、添加文件到缓存存的操作

在git中,在需要提交修改或新加的文件都需要将它们先添加到缓存

git add + 文件名 

添加指定文件到缓存(不会递归目录添加文件)

git add . 

添加当前目录以及递归目录新增和修改的文件到缓存队列

git add *

2.4、实际存储快照

git add将想要快照的内容写入暂存,git commit命令就是将缓存存快照

通过以下命令来实际快照提交的内容,快照实际上就表示git已经记录了内容修改的版本了

git  commit -m 'description'

这时再执行git status会发现没有了改变,说明内容和git本地服务器已经相同

git  status

2.5、将数据推送到远端git服务器

本地快照,最终还是得推送到远端的服务器,通过执行以下命令,就会将你的 [branch] 分支推送成为 [alias] 远端上的 [branch] 分支

git push [alias] [branch]

如果当前分支只有一个远程分支就可以直接使用git push

这里本地分支和远程分支是一一对应的比如本地的master分支对应远程origin/master分支

2.6、远端仓库操作

列出远端仓库别名

git remote 

看远端仓库的实际地址

git remote -v

为项目添加一个远端仓库,这里的alias为自定义远端仓库别名,url为远端仓库地址

git remote add [alias] [url]

删除远端仓库,这个操作会让下一下拉取数据的时候本地数据跟着一起丢失

git remote rm [alias] 

2.7、暂存状态查询

git status命令可以查看缓存状态,但是已经git commit快照的变更git status命令是无法查看到的

简短的列出缓存状态

git status -s 

2.8、文件修改查看

显示已写入缓存文件与已修改但尚未写入缓存的改动的区别

git diff 

会列举出哪些内容已经写入缓存

git diff --cached

显示改动的摘要而非整个diff

git diff -stat

2.9、分支

列出你在本地的分支

git branch

创建新的分支

git branch [branchname]

切换到要修改的分支

git checkout [branchname] 

创建新分支,并立即切换到它

git checkout -b [branchname] 

删除分支

git branch -d [branchname]

2.10、从远端仓库同步数据

git fetch [alias]可以从远端仓库同步数据,但是没有将数据合并到本地仓库分支去,还需要执行git merge [alias]/[branch]命令,这里的alias是远端仓库名称

git fetch [alias]

git merge [alias]/[branch]

将远端仓库上的更新合并到本地对应分支,这里的alias是指远端仓库的名称

git pull 就相当于git fetch后git merge远端对应分支到当前所在的分支。

git pull [alias] [branch]

2.11、提交日志

输出所有的提交日志

git log 

查看指定作者的提交

git log --author=[authorname] 

3、实际项目开发命令总结

实际上,我个人觉得有些命令,不仅常用而且真的是很实用,这里单独拿出来说说

查看本地分支和远程分支的对应关系

git branch -vv

新建本地分支并且和远程分支建立映射关系

git checkout -b localbranch origin/remote_branch

这个命令会自动切到对应的localbranch分支,但是应该还没有和远程分支同步,所以还需要执行

git pull origin remote_branch

这个命令来同步对应的本地和远程分支

4、参考文献

感谢下面的文献,让我从git纯小白,变成了一个能写几句git命令行的小白。

Git版本控制软件结合GitHub从入门到精通常用命令学习手册

Git常用命令

Git使用手册/Git教程:git fetch 将远程仓库的分支及分支最新版本代码拉取到本地

GIT 查看/修改用户名和邮箱地址

git add , git commit 添加错文件 撤销

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值