高效开发 — Git版本工具常用命令整理(纯干货)

一、前言

在这里插入图片描述

工作区:编辑文件都是在工作区
缓存区:git add是把工作区的修改放入缓存区
版本库:git commit是把缓存区的修改放到远程库分支

常见的提示信息

Changes not staged for commit				没有暂存以备提交的变更
Changes to be committed						即将提交的变更
Untracked files								未跟踪文件

二、全局配置

1)修改全局的用户名和邮箱:

git config --global user.name 				目标用户名;
git config --global user.email 				目标邮箱名;

2)修改当前的project:

git config user.name 						目标用户名;
git config user.email 						目标邮箱名;

三、指令整理

mkdir foldername 							新建目录
touch filename 								新建文件

1. 分支操作

git init 									初始化一个空的版本库
git status									查看当前工作树的状态
git branch									查看分支情况
git branch name								创建一个分支
git checkout name							切换到另一个分支			
git checkout -b name						创建一个分支并切换
git branch -d name							删除一个分支
git merge dev								把dev合并到当前分支
git merge --no-ff -m "commit" name			把dev合并到当前分支,并禁用Fast forward

2. 撤销修改

1)没有git add之前

git checkout -- filename					丢弃工作区的改动
git checkout -- .							丢弃工作区所有的改动

2)git add之后,但没有git commit

git reset HEAD -- filename					撤销缓存区修改,重新放回工作区
git checkout -- filename					丢弃工作区的改动

3)既git add,又git commit

git reset --hard HEAD^/HEAD~1				回退到当前版本的上一版本
git reset --hard visionnum					回退到指定的版本

3. 版本创建和回退

git add filename							添加文件到缓存区
git add .									添加所有修改文件到缓存区
git commit -m "commit"						把缓存区内容提交到当前分支
git commit -s -m "commit"					把缓存区内容提交到当前分支,同时添加Signed by签名
git commit -a -s							以文件形式编辑commit信息
git reset --hard HEAD^/HEAD~1				回退到当前版本的上一版本
git reset --hard visionnum					回退到指定的版本

4. 查看log

git log										查看版本记录
git reflog									查看版本操作记录
git log --pretty=oneline					查看简短版log
git log --pretty=oneline --graph			通过图形化查看

5. 对比文件不同

git diff name								对比文件的改变
git diff HEAD -- filename					对比工作区与HEAD版本中文件的不同
git diff HEAD HEAD^ -- filename				对比HEAD和HEAD^版本中文件的不同

6. 删除文件

rm filename									删除目录中的文件
git rm filename								从版本库永远删除文件

7. Bug管理

git stash									隐藏当前工作现场
git stash list								查看保存的工作现场
git stash pop								恢复保存的工作现场

四、GitHub使用

git clone cloneaddr								从远程库克隆到本地
git clone -b branchname cloneaddr				从远程库克隆指定分支到本地
git push origin	name							把本地分支推送到远程库对应分支
eg:
git push origin HEAD:refs/for/FP_BISTO


git branch --set-upstream-to=origin/name name 	将本地分支跟踪服务器对应分支
git push
git pull origin name							从远程分支上拉取代码

git push -u origin master						把本地分支推送到远程库对应分支

因为远程库是空的,所以我们在第一次推送 master 分支时,要加上 -u 参数,Git不但会把本地的 master 分支内容推送的远程新的 master 分支,还会把本地的 master 分支和远程的 master 分支关联起来,在以后的推送或者拉取时就可以简化命令。

这里有一个大神整理的链接~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文化人Sugar

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值