191145692 发表于 2018-1-12 19:14:47

git开发常用命令

  1.基本命令
  git branch 查看本地分支
  git branch -r 查看远程分支
  git checkoutxxx 切换分支
  git pull origin master //从远程同步到本地,master或分支名
  git pull origin xxx
  git checkout -b xxx   新建xxx的分支
  git checkout -b 本地分支名 远程分支名
  git branch -D xxx 删除本地分支
  git status 查看状态
  git add file添加到本地server cache
  git checkout -- file 从本地回滚
  git add path1 path2 ...添加修改文件路径到stage状态。
  git commit 提交本地server
  git log
  git diff cmt1 cmt2 --stat 查看cmt1 和cmt2两个版本的文件变化
  git checkout -- filename 去除本地文件的修改、
  git stash 去除本地的所有更新
  git log --committer xiaojin.lh 查看某个committer的提交
  git reset --hard commit-id :回滚到commit-id,讲commit-id之后提交的commit都去除
  2.拉取远程分支
  1).首先clone,获取远程的主干
  git clone git@gitlab.abcde-inc.com:mysql-engine/alisql.git空目录
  2).查看远程分支
  git branch -r
  3).根据远程分支建立本地分支
  git checkout -b 本地分支名 远程分支名
  4).拉取远程的最新分支
  git pull origin feature_encryption_issue1
  5).拉取远程的某个tag,比如拉取远程rocksdb的4.11.2版本
  git checkout -b 4.11.2 v4.11.2
  3.推送到远程
  git push <远程主机名> <本地分支名>:<远程分支名>
  git push origin xxx:xxx   把本地的分支推送到远程
  git push origin xxx,省略远程分支,表示将本地的xxx分支推送到远程的xxx分支,若分支不存在,则创建。
  git push originxxx:xxx--dry-run模拟推送
  git push orgin :xxx,表示推送一个空分支到远程,相当于删除远程分支。
  等价于:
  git push origin --delete xxx
  4.合并分支master
  1).切换到master分支(想要合并的目的分支,这里是master)
  2).合并分支
  git merge feature_encryption_issue1,(合并想要合并的分支名,这里是feature_encryption_issue1)
  3).推送到远程
  git push origin master
  比如你在开发feature_xxx,这个时候master已经更新了,你需要合并最新的master:
  4).在feature_xxx分支更新master
  git checkout feature_xxx
  git merge master
  5).master 合并某个分支 feature_xxx
  git checkout master
  git merge feature_xxx
  5.提交Merge Request步骤
  1).删除远程分支
  git push origin :xxx_branch//删除远程的xxx分支
  2).拉取master
  git clone git@gitlab.abcde-inc.com:mysql-engine/mysql.git xxx_branch
  3).建立新分支
  git checkout -b xxx_branch
  4).合并diff文件
  git apply xxx.diff
  5).本地提交
  git commit -am "comment"
  6).推送到远程分支
  git push origin xxx_remote_branch
  7).本地提交,使用--amend//commit沿用之前的版本号
  git commit --amend    【本地提交】
  8).推送到远程,使用 --force
  git push origin xxx:xxx--force 【推送到远程】
  6.生成patch,合并patch
  1).基本命令
  git diff old-commitcurrent-commit > xxx.patch 生成patch
  git apply xxx.patch应用某个patch,事务操作,全部成功或全部失败。
  git apply -R xxx.patch恢复某个commit,xxx.patch是变更的内容。
  git apply --check patch 在应用patch之前,可以用命令 --check 确认patch是否有冲突问题。
  git apply patch --reject 如果有冲突,可以通过--reject查看冲突在哪里,然后进行修改。
  2).拉取一个主干,然后应用patch
  git clonegit@gitlab.abcde-inc.com:mysql-engine/alisql.git
  patch -p1 < *.diff
  3).commit
  4).push到远程。
页: [1]
查看完整版本: git开发常用命令