zoukankan      html  css  js  c++  java
  • git解决冲突

    好方法:
    git pull --rebase
    修改
    Git stash
    Git pull --rebase
    Git stash pop
    Git add .
    Git commit -m ''
    git push origin HEAD:refs/for/dev

    场景一:
    撤销工作区的修改:git checkout -- file
    场景二:
    撤销暂存区的修改(只是add还未commit):1.撤销单个文件或文件夹:git reset HEAD -filename 2.撤销所有的已经add的文件:git reset HEAD .
    场景三:
    已经commit还未推送到远程:git reset --hard HEAD^(版本回退)

    柔持git操作步骤

    - [ ] git branch -av 确保在dev分支下,如果不在该分支下,用git checkout dev切换到该分支
    - [ ] 查看修改的文件状态,git status
    - [ ] 红色的修改文件,需要通过git add **,新增到git控制中,然后颜色会变绿
    - [ ] 通过git commit -m “Bugfix: ….”,提交到本地仓库
    - [ ] 通过git push origin HEAD:refs/for/dev,push到远程仓库

    - [ ] 通过git pull --rebase,可以将远程仓库的代码拉到本地,注意分支,拉远程A分支到本地B分支,会自动merge,切记!!

    提交到gerrit后要求修改再次提交时:
    - [ ] git add ***
    - [ ] 通过git diff --cached,查看这次修改的内容
    - [ ] 提交到本地仓库:git commit --amend,将这次修改的内容覆盖最新的提交,如果最新的提交是其他人提交的,此时会有问题!!!
    - [ ] push到远程仓库: git push origin HEAD:refs/for/dev
    将dev的代码推到pre上,且在一条直线上:git push origin dev:pre

    删除本地分支:
    - [ ] git branch -d tmp(-D强制删除,不能删除当前的分支)

    跟踪Git项目源代码:
    - [ ] gitk --all&

    取远程dev分支并分化一个新分支tmp:
    - [ ] git checkout -b tmp origin/dev

    将本地一个分支上的commit (de56ab78b4911fd648b8b86a46571db217a86b9e) , 放到当前分支下提交:
    - [ ] git cherry-pick de56ab78b4911fd648b8b86a46571db217a86b9e
    在有冲突的前提下,要先解决冲突,再continue,或者通过abort放弃操作:
    - [ ] git cherry-pick --continue
    - [ ] git cherry-pick --abort

    push到远程仓库:
    - [ ] git push origin HEAD:refs/for/dev

    回退到某个版本:
    - [ ] git reset --hard {commitID},退回到指定版本
    - [ ] git reset --hard HEAD^,退到上个版本
    - [ ] git reset --hard HEAD^^,退到上上个版本

    撤销修改
    - [ ] git checkout -- <file>,丢弃工作区的修改
    - [ ] git reset HEAD <file>,撤销暂存区的修改,放到工作区

    撤销git push之后的提交
    - [ ] git revert {commitId},再git push。产生一个revert的提交
    - [ ] git reset --hard {commitID},再git push。不产生新的提交。但是存在风险,容易将同伴的提交给撤销了

    1.git pull --rebase
    2.修改
    3.git add -A
    4.git commit -m "BOSS-1172:审核状态"
    3.git push origin HEAD:refs/for/dev

    解决冲突:
    git log

    1.首先是克隆项目
    <pre data-lang="-1">git clone 项目地址

    修改提交人昵称
    git config --global user.name "你的名字(可以是中文)"
    </pre>
    2.然后进代码目录

    <b>常用命令</b>有:
    <pre>添加
    git add 文件名 //添加单个文件
    git add -A //添加所有文件

    提交
    git commit -am "注释内容" //提交到分支
    git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支

    更新
    git pull //更新

    push
    git push origin 分支名 //push到服务器

    查看状态
    git status

    查看提交历史
    git log

    文件比较
    git diff //工作文件比对暂存文件
    git diff --cached //暂存文件和已经提交文件
    git diff --staged //暂存文件和已经提交文件

    移除文件
    git rm
    git rm --cached readme.txt //从暂存区及仓库移除,以后不再跟踪这个文件


    移动或改名
    git mv</pre>


    <b>不常用的命令</b>:

    解决版本冲突需要用到的
    <pre>回退
    git revert HEAD //回退到上一次提交
    git revert HEAD^ //回退到上上一次提交,可以增加“^”来回到更前一次提交
    ---------注意revert回退工作目录后,可以立即做一个最新的commit,相当于拷贝一个旧版本到最新的位置

    重置
    git reset --hard HEAD //重置工作目录(不包括未跟踪的文件)
    ---------要恢复单个文件,可以checkout那个文件:git checkout -- filename

    合并
    git merge hotfix //合并hotfix分支到当前分支。注意,只是合并,合并之后的结果并未提交commit
    git merge upstream/master //合并一个远程取回的分支
    </pre>
    &nbsp;


    <b>提交流程</b>:
    <pre>
    1.切换到develop开发分支 git checkout develop

    2.拉取develop最新代码 git pull origin develop

    3.基于develop创建自己的代码分支 git branch 你的分支名称

    4.在自己的分支开发修改新增文件

    5.如果有新增文件就 git add 文件名 多个文件可以 git add -A

    6.提交到本地的版本库 git commit -am "提交改动信息" Commit message 必须填写

    7.推送到远端分支 git push origin 你的分支名称

    </pre>

    切换到develop pull 然后切到 zhuleixiao merge develop 然后修改本地代码 然后commit 最后 push

  • 相关阅读:
    转载Python中__getattr__ __getattribute__ __get__解释
    python异常介绍
    Javascript创建对象的几种方式
    python类高级话题
    python运算符重载2
    python运算符重载
    python面向对象编程基础
    PHP学习之提示标签
    Web自动化测试构建学习小结(二)
    Web自动化测试构建学习小结(一)
  • 原文地址:https://www.cnblogs.com/zhuleixiao/p/8994876.html
Copyright © 2011-2022 走看看