码迷,mamicode.com
首页 > 其他好文 > 详细

git 常用命令总结

时间:2018-01-19 11:50:46      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:bsp   查看   elastics   log   一个   回滚   --   名称   last   

git 删除分支和代码回滚

1. git 删除分支

  本地分支删除

 git branch -D branch

  远程分支删除

 git push origin :branch  (origin 后面有空格)

2. 代码回滚

  指的是将代码库某分支退回到以前的某个commit id

  本地代码回滚

  git reset --hard commit-id  -->回滚到commit-id,将commit-id之后提交的commit都去除
  或
  git reset --hard HEAD~3     -->将最近3次的提交回滚

    远程代码回滚

   这个是重点要说的内容,过程比本地回滚要复杂

  应用场景:自动部署系统发布后发现问题,需要回滚到某一个commit,再重新发布

  原理:先将本地分支退回到某个commit,删除远程分支,再重新push本地分支

  操作步骤如下:

  git checkout the_branch
  git pull
  git branch the_branch_backup     //备份一下这个分支当前的情况
  git reset --hard the_commit_id    //把the_branch本地回滚到the_commit_id
  git push origin :the_branch      //删除远程 the_branch
  git push origin the_branch       //用回滚后的本地分支重新建立远程分支
  git push origin :the_branch_backup //如果前面都成功了,删除这个备份分支

git 切换远程分支

git clone 命令只能 clone 远程仓库的 master 分支,无法 clone 所有分支,想要 clone 之后切换到想要的分支上的解决办法如下:

  1. 进入或者创建一个干净的目录,假设为 javaProjects

  2. cd javaProjects

  3. git clone http://github.com/elastic/elastisearch.git,这样在 javaProjects 目录下得到一个 elasticsearch 子目录

  4. cd elasticsearch

  5. git branch -a ,含义是列出所有分支的名称

  6. git checkout -b dev origin/dev, 作用是 checkout 远程仓库的 dev 分支,在本地起名为 dev 分支,并切换到本地的 dev 分支上

git 分支查看和切换

  本地分支查看

  git branch

  远程分支查看

  git branch -a

   分支切换(从当前分支切换到分支 test)

  git branch test

git 代码合并

  1. 假设当前分支为 test,你修改完一个文件后提交到本地和远程

  git commit -m ‘fix ik tokens query bug‘
  git push

  2. 切换到 master 分支,更新 master 上最新代码到本地

  git checkout master
  git pull

  3. 切换回 test 分支,并合并刚才你下载最新 master 的本地分支 : git merge master

  git checkout test
  git merge master

git 状态查询

  1. 当前状态查询

  git status

  2. 查看某个具体文件的修改内容

  git diff apps/search/travelnote/facade/CommonUtil.php 

  3. 查看历史提交记录

  git log

 

git 常用命令总结

标签:bsp   查看   elastics   log   一个   回滚   --   名称   last   

原文地址:https://www.cnblogs.com/liang1101/p/7657604.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!