当前位置: 首页 > news >正文

Git 学习打卡Day2-远程仓库高级操作

远程仓库高级操作

远程跟踪分支
  • Git 好像知道 main 与 origin/main 是相关的,why?
  • main 和 o/main 的关联关系是由分支的“remote tracking”属性决定的。main 被设定为跟踪 o/main —— 这意味着为 main 分支指定了推送的目的地以及拉取后合并的目标。当你克隆仓库的时候, Git 就自动帮你把这个属性设置好了。
  • 当你克隆时, Git 会为远程仓库中的每个分支在本地仓库中创建一个远程分支(比如 o/main)。然后再创建一个跟踪远程仓库中活动分支的本地分支,默认情况下这个本地分支会被命名为 main。克隆完成后,你会得到一个本地分支(如果没有这个本地分支的话,你的目录就是“空白”的)。
remote tracking 属性
  • 你可以自己指定这个属性,让任意分支跟踪 o/main, 然后该分支会像 main 分支一样得到隐含的 push 目的地以及 merge 的目标。 这意味着你可以在分支 totallyNotMain 上执行 git push,将工作推送到远程仓库的 main 分支上。有两种方法设置这个属性:
    • 通过远程分支切换到一个新的分支,执行:git checkout -b totallyNotMain o/main,就可以创建一个名为 totallyNotMain 的分支,它跟踪远程分支 o/main。在这里插入图片描述
      在这里插入图片描述
    • git branch -u 命令:执行git branch -u o/main foo,这样 foo 就会跟踪 o/main 了。如果当前就在 foo 分支上, 还可以省略 foo:git branch -u o/main
Git Push 的参数
  1. git push <remote> <place>
    • 通过 place 参数来告诉 Git 提交记录来自于 main, 要推送到远程仓库中的 main。也就是说,当为 git push 指定 place 参数为 main 时,我们同时指定了提交记录的来源和去向
      在这里插入图片描述
    • git push origin main 翻译:切到本地仓库中的“main”分支,获取所有的提交,再到远程仓库“origin”中找到“main”分支,将远程仓库中没有的提交记录都添加上去,搞定之后告诉我。
  2. git push origin <source>:<destination>,同时指定源和目的地。
    • source 可以是任何 Git 能识别的位置,如 git push origin foo^:main
    • 如果你要推送到的目的分支不存在会怎么样呢?没问题!Git 会在远程仓库中根据你提供的名称帮你创建这个分支!
git fetch 的参数
  • git fetch 的参数和 git push 极其相似。他们的概念是相同的,只是方向相反罢了(因为现在你是下载,而非上传)。
  • 如果 git fetch 没有参数,它会下载所有的提交记录到各个对应的远程分支……
  1. git fetch origin foo
    • Git 会到远程仓库的 foo 分支上,然后获取所有本地不存在的提交,放到本地的 o/foo 上。
    • 你可能在 foo 分支上的工作还未完成,你也不想弄乱它。还记得在 git fetch 课程里我们讲到的吗?它不会更新你的本地的非远程分支, 只是下载提交记录。
  2. git fetch origin <source>:<destination>
    • source 现在指的是远程仓库中的位置,而 destination 才是要放置提交的本地仓库的位置。
    • 跟 git push 一样,Git 会在 fetch 前自己创建立本地分支, 就像是 Git 在 push 时,如果远程仓库中不存在目标分支,会自己建立一样。
source 参数为空
  • push 空在这里插入图片描述在这里插入图片描述
  • fetch 空在这里插入图片描述
git pull 的参数
  • git pull 到头来就是 fetch + merge 的缩写。你可以理解为用同样的参数执行 git fetch,然后再 git merge 你所抓取到的提交记录
  • git pull origin foo 相当于:git fetch origin foogit merge o/foo
  • git pull origin bar:bugFix 相当于:git fetch origin bar:bugFixgit merge bugFix
http://www.dtcms.com/a/537827.html

相关文章:

  • 宝石千莲疗愈师班|让热爱成为专业,让陪伴更有力量
  • Vue3小兔鲜-(一)
  • 清华紫光网站建设app软件制作公司哪家好
  • 3.1.1.1 大数据方法论与实践指南-开源工具说明-Apache NiFi
  • 分享一个自用的AI Coding Prompt
  • C# Office文档操作完整教程
  • HTML 表单控件
  • 基于C#的文档处理
  • 免费网站制作视频教程自适应型网站建设服务电话
  • nacos集群部署配置
  • 从小咖秀到 Sora 2:AI 短视频的商业化演进逻辑
  • 织梦网站程序安装网站开发计划书范文
  • Jackson 常用注解与完整用法总结
  • 浙江江能建设有限公司网站网店怎么推广和宣传
  • 在SCNet DCU异构环境使用Ollama 0.5.7启动deepseek等大模型
  • aspnet网站模板会员可见的网站开发
  • 网站有哪几种类型微信上wordpress
  • SQL语言基础
  • 找能做网站的wordpress 读取用户信息
  • 做网站得基础阿里首个网站开发人员
  • 佛山网站上排名企业培训师资格证报考2023
  • o2o网站建设策划淄博网站建设 很乱
  • 商品网站建设实训报告专业做轴承的网站
  • GJOI 10.23 题解
  • 《HTTP 的进化史:从 1.0 到 3.0 的飞跃》
  • wordpress 首页导航神马搜索seo优化排名
  • 淄博做网站小程序的公司域名免费注册0元注册
  • Vue3 项目创建指南(Vue-CLI vs Vite 对比)
  • 为IvorySQL增添PACKAGE语法帮助
  • 软件开发公司网站模板所有网站都要备案吗