• git的基本指令


    更多详情请看廖雪峰官方网站

    http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

    1.删除分支

    • 删除本地分支
    git branch -d feature/qdn/609

    2.使用git对项目进行提交

    (1)git pull提交代码前先更新

    • git pull或者git pull origin 分支名称

    (2)git status

    在工程目录下执行git status 操作来查看自己的状态,例如git status 状态有三种

    • Changes to be committed:准备好提交状态;
    • Changes not staged for commit:有路径但未准备好提交状态;
    • Untracked files:没有路径的状态;

    (3)git add .

    则会把所有的状态都改为Changes to be committed

    (4)执行git commit -am "做某某的更改"

    会把Changes to be committed状态都变为commited状态,并提交commit的备注,以便别人知道你做了什么操作,但是没有push;

    (5)执行git push

    操作把分支push到工程的主干中进行合并;

    3.当提交代码有冲突时

    (1)先切换到develop分支中,git checkout  develop

    (2)更新develop分支,git pull 目的是把最新的develope分支更新到本地仓库中

    (3)切换到自己的分支中 git checkout 分支名  

    (4)再执行git merge develop (目的,是把自己的分支和本地仓库中的develop进行合并,若有冲突,会显示冲突的地方,可以对冲突进行修改)

     

    4.git从现有的分支创建一个新的分支

    • 1.切换到develop中去
    git checkout develop
    • 2.更新develop分支:
    git pull origin develop
    • 3.在develop分支上创建分支 feature/qdn/742。命令为:
    git checkout -b feature/qdn/742
    • 4若在本地需要远程仓库现有的一个分支,需要先下载该分支,并切换到该分支下,命令如下
    git fetch origin feature/qdn/788
    git checkout feature/qdn/788
    • 5.用命令提交
    • git push origin feature/qdn/788
    • 6. git diff 
    • 可以查看工作区和缓存区的差异
    • 7.git diff --cached
    • 如果已经提交到缓存区中,git diff已经不生效了,此时需要加上git diff --cached
    • 如果已经commit了,但没有push想看和远程分支的差别,则需要git diff origin 分支名
    • 8. 如果还原,则用git reset --hard 是还原没有commit之前的代码
    • 9.如果已经commit了,或者已经push了,则需要git reset 具体的提交tag编码
    • git reset  8aca1711d7c8e2abe93866babe47081af0efa922
    • 10. git branch -m 分支名 //给分支改名

     5. git merge 和 git rebase的区别

       //适合bug的修改的合并,如果是大量代码的合并,如果遇到冲突就停止解决冲突,再continue,再continue 再commit 效率会非常低;

       在a分支上合并b分支,那么用git rebase 则会把b分支的东西,一点一点的合并到a分支上,当和a分支冲突时,会停止合并,并让你解决冲突后,再使用git rebase --continue 继续合并

       

      //适合于任务的提交,合并代码量多的情况下 

       git merge 是 b分支全部合并到a分支后,如果有冲突会提示出来后,需要再次git add . 和git commit -m "提交" 后才行

    6. git merge 的时候,加上 --no-ff 参数,是为了让它生成一个新的 commit,这样就可以防止报(no new changes)问题     

    作者:guanbin —— 纵码万里千山

    出处:https://www.cnblogs.com/guanbin-529/

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    vue 之循环添加不同class
    小程序 之使用HMACSHA1算法加密报文
    微信小程序 之wx.getLocation()获取地理信息中的小坑
    js 时间戳与yyyy-mm-dd或yyyy-MM-dd HH-mm-ss互相转换
    小程序 之登录 wx.login()
    打开串口(COM)号大于9时报错
    linux的mysql权限错误导致看不到mysql数据库
    Nginx报错汇总
    获取磁盘总空间和剩余空间
    关于CoCreateInstance的0x800401f0问题
  • 原文地址:https://www.cnblogs.com/guanbin-529/p/6241379.html
Copyright © 2020-2023  润新知