新手区 Git 基本使用

水泊心 · January 19, 2017 · 796 hits

Git的使用

以下以IDEA Git为例

IDEA Git配置

此处输入图片的描述

  • 在File--setting--Version Control--Git中配置git安装路径
  • 在File--setting--Version Control中配置 IntelliJIDEA版本控制,可以清楚的看见版本的变更
  • 在配置完git路径后,可以在Terminal使用git 命令行进行操作

新建分支

git branch testing

查看分支

ps:分支前带星号则为目前所在分支

git branch

此处输入图片的描述

更新代码

git pull --rebase origin master

查看状态

git status

此处输入图片的描述

添加所有修改

git add .

提交添加的修改

git commit -m "描述"

此处输入图片的描述

提交到远程分支

git push origin testing

此处输入图片的描述

可以在Version Control 的 log中看见所有的提交

此处输入图片的描述

merge操作:在master分支上merge自己的分支

分支在testing上

  • 查看状态 git status
  • 确认后切换分支 git checkout master
  • pull远程分支的代码git pull origin master
  • 进行merge操作git merge testing

解决冲突

  • 查看当前冲突文件git diff
  • 冲突文件会有如下的部分
<<<<<<< HEAD:
Hello world
=======
Goodbye
>>>>>>> 77976da35a11db4580b80ae27e8d65caf5208086
  • HEAD为master的修改,写有hash的为分支上的修改,手动根据情况将其改好,去掉分隔符
Hello
  • 接下来再重新提交
git add .
git commit -m "..."

提交代码

  • push到远程mastergit push origin master
  • 删除已经合并过的分支git branch -d testing

rebase操作:在自己的分支上rebase master分支

  • 先更新master分支代码
git checkout master
git pull --rebase origin master
  • 然后切回自己的分支git checkout testing

  • 一般要合并自己当前分支的多次提交
    查看当前分支创建时的那个commit,复制SHA1gitk
    Jietu20170118-102229

  • 将分支soft reset回这个位置,但是代码不变

git reset --soft SHA1
git commit -m "..."
  • 进行rebase操作git rebase origin master

解决冲突

  • 查看当前冲突文件git diff
  • 冲突文件会有如下的部分
<<<<<<< HEAD:
Hello world
=======
Goodbye
>>>>>>> 77976da35a11db4580b80ae27e8d65caf5208086
  • HEAD为master的修改,写有hash的为分支上的修改,手动根据情况将其改好,去掉分隔符 Hello
  • 接下来再继续rebase
git rebase --continue

提交代码

  • 再次通过gitk查看分支的SHA1并记录
  • 切回到master分支git checkout master
  • 将master分支hard reset到当前分支并提交到远程
git reset --hard SHA1
git push origin master

通过github的pull request提交代码

  • 进入github页面,找到自己当前的分支新建pull request

Jietu20170118-105103

  • 新建pull request

Jietu20170118-105515

  • 确认无误后可以在页面上提交代码
    Jietu20170118-105751

  • 最终效果和rebase一致,操作简单,而且可以让别人review自己的修改,如果有冲突需要手动将分支rebase一下master

No Reply at the moment.
需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up