常用Git命令使用

前言

最近项目版本控制工具从svn换成了git,所以将常用的git命令使用方式做下记录。

暂存区

暂存区(可能不同人有不同叫法,这里先这么叫)到底是个什么东西?其实暂存区在我们使用git时是一个很重要的概念,在使用git命令之前,必须要理解。先看下面我画的一张草图大概了解下暂存区:
在这里插入图片描述
图画的有点潦草,但是意思应该很清楚。
工作区:你的本地的工作目录,一般是项目workspace。
暂存区:你暂时可以理解为git放在你电脑上的一块缓存区域。
远程仓库:这个么?哎,我不说,就是玩儿。

我们在工作区的修改经过git add后会同步到暂存区,到暂存区后,我们经过git commit 生成一个提交节点,最后通过git push才能将代码同步到远程仓库。

常用命令使用

git status

这个是查看工作目录中哪些文件有改动,比如说增加、删除文件或者修改了文件。
在这里插入图片描述

git add

将新增文件(Untracked files)加入暂存区。我们使用git add test.txt之后,在使用git status命令如下:
在这里插入图片描述
可以看到原来红色(Untracked files)已经变成了绿色(Changes to be committed),这说明test.txt这个文件已经加入了暂存区。
而且下面几个红色的文件都可以通过git add命令将修改同步到暂存区。

git commit

这个命令是将暂存区中的内容生成一个提交(备份),使用是格式是git commit -m ‘注释内容’,commit之后再使用git status 发现暂存区中的内容已经没有了:
在这里插入图片描述

git push

通过commit提交之后,然后git push [remote-name] [branch-name]来同步本地代码到远程仓库。当remote-name是origin,branch-name是master是,也可以简写成git push,这样就完成了一次完整提交。

git log

查看提交的记录
在这里插入图片描述
注意:log很多时按Q键退出。

git pull

通过git pull[remote-name] [branch-name],看名字就知道和git push是相反的,这个是将远程仓库的代码同步到本地来。记得同步之前一定要将本地修改提交到远程仓库,否则可能导致冲突。

git rm

我们删除了工作区的文件后,使用git status查看,已经提示我们删除了
在这里插入图片描述
然后我们用git rm filename将暂存区的文件也删掉,运行git status

在这里插入图片描述
然后执行git commit和git push将改动同步到远程仓库。
注意:如果想把文件从暂存区域移除,但仍然希望保留在当前工作目录中git rm --cached filename。

git reset HEAD

把暂存区里的文件用上一次提交时的文件代替。接上面,test.txt文件删除同步到暂存区后,我们不执行commit和push操作,然后使用git reset HEAD test.txt,然后再使用git status命令
在这里插入图片描述
发现暂存区的删除状态没有了。

git checkout

把工作目录下的文件用暂存区里的文件代替,我们执行git checkout test.txt,然后git status命令
在这里插入图片描述
工作区的删除状态被暂存区文件(暂存区文件没有删除状态)替代。

如果你的工作还没有添加到暂存区,想要恢复,那么用git checkout filename 即可,如果添加到了暂存区,可以先git reset HEAD filename 再git checkoutfilename 。

git reset commitID

把当前版本回退到之前提交的任意一个版本中,回退了暂存区中的文件,工作区中的文件是不会改变的。上面我们使用过这样一个指令,git reset HEAD filename,这其实是同一个指令!在Git中,HEAD表示最近一次提交,而最近一次提交的上一次提交可以用HEAD^,上上次后面以此类推为HEAD^^。
我们先通过git log可以找到提交的commitID,然后找到想要回退的提交就行。

git branch

查看分支,加个-a参数就是查看远程分支,不加就是查看本地分支。切换分支使用git checkout branchname

新建本地分支并和远程分支关联

git checkout -b 本地分支名 remotes/origin/远程分支名

清理远程分支

在清理之前我们可以用如下命令来查看remote地址,远程分支,还有本地分支与之相对应关系等信息。
git remote show origin
此时可以看到远程仓库中被删除调的分支的状态为:
stale (use ‘git remote prune’ to remove)
接下来就可以使用这个命令来清理远程分支:
git remote prune origin

删除本地分支

git branch -d [分支名]

尾巴

常用的命令总结差不多就这些了,基本能满足到90%的工作场景需求。如果有补充和错误欢迎给我留言,如果文章对你有帮助,也欢迎给我点赞和关注,谢谢!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值