一文带你掌握git命令

720 阅读3分钟

前言

用惯了IDEA突然要使用命令,趁这次机会恶补一下Git命令。

Git流程图

image.png

Git和SVN的区别

image.png

Git常用命令

创建分支

git branch user-info[分支名称]

创建分支并切换到当前创建的分支下

git checkout -b user-info[创建的分支名]

切换分支

git checkout user-info[切换的分支名称]

删除本地分支

注意:这里的删除分支只能在父分支上删除

git branch -d user-info[删除的分支名]

更新远程分支列表

谨慎操作

git remote update origin --prune

删除远程分支user-info

谨慎操作

git push origin --delete user-info

移除分支上的文件

git rm user-info.vue[文件名]

提交文件到指定分支上

将user-info提交到主分支上

git push user-info master

合并分支

将user-info分支合并到merge上

git merge user-info[分支名]

查看状态

git status

查看分支

git branch

查看所有分支

git branch -a

合并冲突

1、进入要合并的分支(如开发分支合并到master,则进入master目录)
git checkout master
git pull

2、查看所有分支是否都pull下来了
git branch -a

3、使用merge合并开发分支
git merge 分支名

4、查看合并之后的状态
git status

5、有冲突的话,通过IDE解决冲突;

6、解决冲突之后,将冲突文件提交暂存区
git add 冲突文件

7、提交merge之后的结果
git commit

如果不是使用git commit -m "备注" ,那么git会自动将合并的结果作为备注,提交本地仓库;

8、本地仓库代码提交远程仓库
git push

git将分支合并到分支,将master合并到分支的操作步骤是一样的。

add文件

慎用慎用(一定要看当前目录文件在哪里,在最外层目录下会把忽略的文件也add进去) 添加当前目录下的所有文件到暂存区

git add .

add具体的文件

注意这里是在user-info父文件下add的,如果不是在父元素上add的请通过路径来add对应文件

git add user-info.vue

提交代码(注意查看提交的分支)

一般来说一个模块对应一个分支

git commit -m '第一次版本提交'

查看提交历史

会显示出作者、时间、提交的分支等,如果在IDEA的Terminal中通过git log查看记得输入wq退出。

git log

设置代码标签tag

tag的是版本库的快照,发布一个版本时,我们通常先在版本库中打一个标签(tag),这样就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。

给最新一次提交添加tag

 git tag -a v1.0

查看所有标签

git tag

查提交历史的简洁版本

git log --oneline

修改HEAD的位置

谨慎使用 常用于还原到之前版本

  1. 查看版本号git log,找到当前版本号和要还原的版本号
  2. 使用git reset --hard 1faa6d9[目标版本号]
  3. git push提交更改,会报错提示指向版本比远程仓库要旧,通过git push -f强制push

本地开发灵活管理

git rebase -i将本地提交的代码合并为一个

  1. 切换分支git checkout master
  2. 拉去最新的分支状态git pull
  3. 切换到本地分支git checkout user-info
  4. 合并提交git rebase -i HEAD~2,2表示合并两个
  5. 将当前操作分支变基到目标分支(即 master)上git rebase master
  6. 连接本地分支与远程分支rebase --continue
  7. 回到主分支上git checkout master
  8. 将本地分支合并到主分支上git merge user-info
  9. 将本地分支上传到远程仓库上git push

# vue-cli-service lint 代码检测 (打包文件提交不成功)

image.png

git commit --no-verify -m "提交备注"

持续补充中~,太多了,把常用的记住就好了

image.png