02Git学习笔记-远程操作

130 阅读2分钟

远程

1.克隆

  • git clone

2.下载远端代码

  • git fetch

3.拉

  • git pull

4.推

  • git push

5.获取远程库代码并合并

  • git pull --rebase 拉远程库下来到当前版本之前的版本,并且合并到当前版本

6.远程追踪分支

  • pull 操作时, 提交记录会被先下载到 o/main 上,之后再合并到本地的 main 分支。隐含的合并目标由这个关联确定的。push 操作时, 我们把工作从 main 推到远程仓库中的 main 分支(同时会更新远程分支 o/main) 。这个推送的目的地也是由这种关联确定的!
  • git checkout -b totallyNotMain o/main 创建一个名为 totallyNotMain 的分支,它跟踪远程分支 o/main
  • ​git checkout -b foo o/main 创建一个foo分支,让他追踪o/main,之后对foo的修改会保存到o/main中
  • ​git branch -u o/main foo 创建一个分支foo,让他追踪o/main,之后对foo的修改会保存到o/main中

7.git的push参数设置

  • git push origin <source>:<destination>(push是由近到远)

    将本地仓库的source,上传到远程仓库的destination

  • git push origin main切换到本地库的main分支,获取所有提交,再到远程仓 库origin中找到main分支,将远程仓库的没有的提交记录都添加上去

  • git push origin foo^:main将foo的一个位置,上传到所有未被包含到远程仓库里main分支中

  • git push origin main:newbranch 将当前main的位置提交到远程仓库的newbranch分支的位置,若远程库里newbranch不存在,则直接创建

  • git push origin :foo传空值到远程仓库,会直接删除了远程仓库的foo分支

8.git的fetch参数设置

  • git fetch origin <source>:<destination> (fetch是由远到近)

    用于获取远程库destination的分支上本地不存在的提交,放到本地的source

  • git fetch origin foo下载远程仓库中foo分支的最新提交,并更新本地库

  • git fetch origin foo~1:bar 将foo~1解析成一个origin仓库的位置,然后将那些提交记录下载到本地的一个bar(已存在)分支

  • git fetch origin foo~1:bar 将foo~1下载到本地bar分支上,若本地没有bar分支,会直接创建

  • git fetch origin :bar如果fetch空值到本地,会在本地创建一个新分支bar

9.git的pull参数设置

  • git pull origin bar:foo等价于git fetch origin bar:foo+git merge foo即先把远程仓库的bar分支拉到本地仓库的foo分支上,然后在和本地库merge