• github学习(三)


    Git学习(二)

    分支学习:
    • 创建新分支dev:git branch dev
    • 切换到dev分支:git checkout dev

      可以简写为一句话:git checkout -b dev

    • 可以用命令git branch来查看当前分支的情况。

      git branch会列出所有的分支,当前的分支是带有*标志的那个。

    • 合并指定的分支到当前的分支上面:git merge dev
    • 删除名字叫dev的分支:git branch -d dev
    • git解决冲突:如果出现合并冲突的情况,需要手动解决冲突,然后在添加,推送到本地的git库。

      显示git的合并图:git log --graph --pretty=oneline --abbrey-commit

    • 通常合并分支时,git会用fast forward模式。但在这种模式下,删除分支之后,会丢掉分支的信息。

      如果禁用fast forward模式,git就会在merge时生成一个新的commit,这样,从分支历史上就可以看到分支的信息。

      禁用fast forward模式:git merge --no-ff -m "not fast forward" dev

    • bug分支,当你正在dev上面开发的时候,有一个紧急的bug需要修复。
    1. 这时候可以用git stash将当前的工作现场储存起来,等以后恢复现场后继续工作。
    2. 然后切换到master的分支上,创建一个名字叫issue的分支:git checkout -b issue,然后开始修复bug,修复好之后,切换到master分支上面,合并分支。然后删除issue分支:

      git checkout master

      git merge --no-ff -m “merge bug fix " issue

      git branch -d issue

    3. 最后切换到dev的分支继续干活:git checkout dev
    4. git stash list用来查看工作现场的储存列表,需要恢复一下。

      a.git stash apply恢复,但是恢复之后,stash内容并不删除,需要用git stash drop来删除。

      b.可以用git stash pop恢复,在恢复的同时,把stash内容也删除了。

    • 创建新分支feature(未合并),没有合并的分支不能删除,可以强制用git branch -D feature来强制删除。
    • 推送分支到远程仓库origin:git push origin mastergit push origin dev

      推送分支时如果不能推送,多半是因为和他人提交到远程仓库有冲突。如果别人提交代码到远程仓库,这个时候你需要把远程仓库的最新代码拉下来,然后保证两端代码的同步:

      git pull origin master

      然后再提交:git push origin master

      一般我们在push之前都会先pull,这样不容易冲突。

  • 相关阅读:
    oracle登录错误(ORA-01033:ORACLE initialization or shutdown in progress
    mssql 判断sql语句的执行效率语句
    关于 knockout js 学习中的疑问 (1)
    JS 根据Url参数名称来获取对应的值 方法封装
    账户
    windows库
    CentOS的Qt3和Qt4问题
    c/c++调用dll
    CentOS 安装g++
    输入法不见了
  • 原文地址:https://www.cnblogs.com/weixuqin/p/6537376.html
Copyright © 2020-2023  润新知