git 常用的操作命令

常用命令

# 查看版本号
$ git --version

# 查看文件状态
$ git status

# 添加文件到暂存区
$ git add .

# 添加指定文件到暂存区
# git add [文件名]
# git add [文件名1][文件名2][文件名3]...

$ git add index.html
$ git add index.html src/main.js src/route/index.js

# 提交暂存区的文件
# git commit -m "提示信息"

$ git commit -m "xxx"

# 推送到远程仓库
$ git push origin master

# 查看日志
$ git log

# 查看全部日志
$ git reflog

# 版本回退
# git reset --hard [版本号]

$ git reset --hard 13b1905dff6...7096e44e191

# 如果代码写错了之后想撤销,也就是还原文件初始状态
# 还原初始文件
# git checkout [文件名]

$ git checkout index.html

# 如果已经 add 代码到缓存区
# 还原暂存区的文件
# git reset HEAD [文件名]

$ git reset HEAD index.html

# 如果已经 commit 了,就需要版本回退
# 回退版本
$ git reset --hard [版本号]

# 查看分支
$ git branch

# 查看全部分支
$ git branch -a

# 查看远程分支
$ git branch -v

# 新建分支
# git checkout -b [分支名称]

$ git checkout -b test

# 删除分支
# git branch -d [分支名称]
# git branch -D [分支名称]

$ git branch -d test
$ git branch -D test

# 强制推送到远程仓库
$ git push -f origin master

git 拉取 更新 提交 创建分支 合并分支操作

拉取远程master分支

$ git clone https://github.com/xxx/xxx.git
# 或者
$ git clone git@github.com:xxx/xxx.git

更新代码

# 更新主分支代码
$ git pull origin master

# 切换分支
$ git checkout dev

# 更新dev分支代码
$ git pull origin dev

提交代码

# 查看当前状态
$ git status

# 添加所有变动的文件到缓存区
$ git add .

# 或者添加指定的文件
$ git add index.html

# 提交文件
$ git commit -m "提交"

# 推送到远程仓库
$ git push origin master

在master主分支上提交代码

# 更新代码
$ git pull origin master

# 查看状态
$ git status

# 添加文件到暂存区
$ git add .

# 提交
$ git commit -m "提交到master"

# 推送到远程仓库
$ git push origin master

在dev分支上提交代码

# 切换分支
$ git checkout dev

# 更新代码
$ git pull origin dev

# 添加文件到暂存区
$ git add .

# 提交
$ git commit -m "提交到dev分支"

提交到派生的master分支上

# 切换到主分支
$ git checkout master

# 添加派生仓库地址
$ git remote add xxx git@github.com/xxx/xxx.git

# 更新代码
$ git pull xxx master

# 查看状态
$ git status

# 添加文件到暂存区
$ git add .

# 提交
$ git commit -m "提交到派生master分支"

# 推送到远程派生仓库
$ git push xxx master

提交到在派生dev分支上

# 切换分支
$ git checkout dev

# 更新代码
$ git pull xxx dev

# 查看状态
$ git status

# 添加文件到暂存区
$ git add .

# 提交
$ git commit -m "提交到派生dev分支"

# 推送到远程派生仓库
$ git push xxx dev

本地新建分支并合并代码到master分支

# 切换分支
$ git checkout master

# 更新代码
$ git pull origin master

# 查看全部分支
$ git branch -a

# 新建本地分支
$ git cheeckout -b test

# 更新代码
$ git pull origin master

# 添加文件到暂存区
$ git add .

# 提交
$ git commit -m "提交到本地test分支"

# 切换分支
$ git checkout master

# 合并test分支到master分支
$ git merge test

# 推送到远程仓库
$ git push origin master

在本地新建分支并合并到dev分支

# 切换分支
$ git checkout master

# 更新代码
$ git pull origin master

# 查看全部分支
$ git branch -a

# 新建本地分支
$ git checkout -b test2

# 更新代码
$ git pull origin master

# 查看状态
$ git status

# 添加文件到暂存区
$ git add .

# 提交
$ git commit -m "提交到本地test2分支"

# 切换分支
$ git checkout dev

# 合并test2分支到dev分支
$ git merge test2

# 推送到远程dev分支
$ git push origin dev

代码冲突

一般有两种情况:

  • push推代码的时候发生代码冲突
  • 合并分支的时候发生代码冲突

比如在分支中写的代码,主分支也有类似的,就极有可能发生冲突

解决方法

当出现冲突的时候,命令行会告诉我们哪个文件合并出错,找到这个文件的时候,看到有个特殊的箭头包裹着一段代码,那就是两个代码块不一样的地方,你需要自己手动修复

然后,需要重新提交,但是再commit的时候使用如下命令:

# 解决冲突再次提交
# git commit -i -m "更新说明" [文件名]

$ git commit -i -m "解决冲突" index.html
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐