github多人协作、异地协作

远端项目保存在我的git hub上面的一个仓库中,对这个仓库执行多人协作、异地协作

克隆代码到本地

  • (1)下载远端项目至本地

右键打开Git Bash Here

  • (2) 输入命令
    git clone https://github.com/xxxx(HTTPS)
    git clone git@github.com......(SSH)

注:只有在项目开始的时候使用git clone 下载项目

以后每天早上是在项目目录下通过git pull 来拉取最新的项目代码

早上刚来,你要做的事情abcd

先进入项目文件夹,在项目文件夹内右键点击Git Bash Here

  • a. 查看远程仓库 $ git remote -v 这样可以看到自己连接的仓库是否正确
Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (edit_branch)
$ git remote -v
origin  git@github.com:Jan0510/GRBL1.1_learning.git (fetch)
origin  git@github.com:Jan0510/GRBL1.1_learning.git (push)
  • b. 拉取远程最新的代码 $ git pull (相当于fetch+merge)
Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (edit_branch)
$ git pull origin main
From github.com:Jan0510/GRBL1.1_learning
 * branch            main       -> FETCH_HEAD
Updating dbcdb18..dc3657a
Fast-forward

显示Fast-forward说明成功了,若是失败则提示non-fast-forward

  • c. 创建分支,分支名称自己定义(拉取最新的code后,习惯上要求再创建一个用来编辑的分支)
    $ git checkout -b edit_branch

  • d. 在刚创建分支edit_branch下开始做修改

下班前该提交你的项目了,需要做的事情efghijk

  • e. 确认当前分支是edit_branch,然后add+commit
Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (edit_branch)
$ git branch
* edit_branch
  main
$ git add .
$ git commit . -m "edit_done"
  • f. 这时候切换到主分支 (切换分支之前一定要保证分支edit_branch下已经
    完全commit, 否则无法切换,即使用git status查看一下,没有红的绿的就表示提交完成)

$ git checkout master (切换至master分支)

  • g.再次拉取远程最新代码(此时路径应在master下)

$ git pull

这里解释一下为什么要切换到主分支并且重新拉取代码

因为咱们多人协作,在你编写你的代码期间,别人可能已经上传、更新版了,
这时候项目的源代码或许已经改变,因此需要重新拉取。

重新拉取的代码会重新下载到你的项目目录中,
之前edit_branch分支改变的内容会保存在你电脑的缓存区。
  • h. 在你的主分支(master)下进行分支合并

$ git merge edit_branch

  • i: 那么刚才只是在本地合并分支,我们需要将本地合并后的主干master上传到远端的master

$ git push -u origin master

  • j: 这时候在远端查看一下,你的代码是否修改完成

  • k: 确认修改完成了 这时候删除你自己的分支 edit_branch

$ git branch -d edit_branch

强制删除命令($ git branch -D edit_branch

Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (edit_branch)
$ git branch
* edit_branch
  main

Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (edit_branch)
$ git add .

Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (edit_branch)
$ git commit . -m "edit_1"
On branch edit_branch
nothing to commit, working tree clean

Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (edit_branch)
$ git checkout main
Switched to branch 'main'

Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (main)
$ git merge edit_branch
Updating 555f1e3..dc3657a
Fast-forward
 README.md                                 |   1 +
 grbl-1.1h.20190825/grbl/config.h          |   8 +-
 grbl-1.1h.20190825/grbl/coolant_control.c |   1 +
 grbl-1.1h.20190825/grbl/gcode.c           |  31 +-
 grbl-1.1h.20190825/grbl/gcode.h           |  10 +-
 grbl-1.1h.20190825/grbl/motion_control.c  |  45 +--
 grbl-1.1h.20190825/grbl/nuts_bolts.c      |   7 +-
 grbl-1.1h.20190825/grbl/nuts_bolts.h      |   2 +-
 grbl-1.1h.20190825/grbl/planner.c         |  96 +++--
 grbl-1.1h.20190825/grbl/planner.h         |  14 +-
 grbl-1.1h.20190825/grbl/protocol.c        |  67 ++--
 grbl-1.1h.20190825/grbl/settings.h        |   2 +-
 grbl-1.1h.20190825/grbl/spindle_control.c |   9 +-
 grbl-1.1h.20190825/grbl/spindle_control.h |   5 +-
 grbl-1.1h.20190825/grbl/stepper.c         | 572 ++++++++++++++++++++----------
 15 files changed, 569 insertions(+), 301 deletions(-)

Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (main)
$ git push -u origin main
Everything up-to-date
Branch 'main' set up to track remote branch 'main' from 'origin'.

Jianwei@DESKTOP-QSBBGQV MINGW64 ~/Desktop/grbl-1.1h.20190825 (main)
$ git branch -d edit_branch
Deleted branch edit_branch (was dc3657a).
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值