美文网首页
Git Fork 技巧

Git Fork 技巧

作者: sunnyaxin | 来源:发表于2020-02-13 17:31 被阅读0次

日常工作中,经常会遇到一种情况,看到别人写的好的 repo 希望能够学习瞻仰,一番观摩之后发现一些问题,因而需要对代码做一波修改,修改之后希望能够贡献在源代码上,但是又因为没有权限无法提交,这时候就可以使用 Fork了。


Fork 的主要作用

  1. 对该项目提出改动意见。
  2. 使用其它的人的项目作为自己项目的起点。
    这样你就可以在遵守Open source license的前提下任意修改这个项目了。

常用场景

  1. 对 repoA 进行 Fork,然后就可以在自己的github下看到该工程了,名为 repoB
  2. 若直接 clone repoB
  • 进行浏览或修改,commit之后可以直接提交在自己的 repoB 中;
  • 若希望修改也发生在 repoA中,则通过提 PR 的方式,则原 repoA accept后即可修改;
  1. 若直接 clone repoA
  • 进行浏览或修改,commit之后没有代码 push 权限,因为此时本地的 repo 关联的是 repoA;git remote -v可以查看
  • 则需要将 repoB也设为本地 repo 的远端代码,并设置远端repo的名字<fork_repo>
    git remote add <fork_repo> <repoB_git_address>
    之后则可以像步骤2 一样进行其他的操作。
Tips
  1. 通常我们在分支上push代码时,会直接使用gp命令,这里其实是git push origin <branch_name> 的缩写,代表将当前分支push到origin远端分支上;
  2. 当我们在步骤3中为本地repo添加了第二个远端源之后,则当前repo有两个关联的远端repo,分别为originfork_repo,这时在分支上提交代码时不能再使用 gp, 需要使用 git push fork_repo <branch_name>来完成push;

涉及知识点

  1. 使用 git remote -v 查看远程状态
git remote -v
origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin  https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)

通常 fetch 和 push 的两个远端源是同一个,当然也可以设置成不同的远端源,如从A源进行fetch,而去B源push提交。

  1. 为本地repo添加一个远端repo
git remote add <remote_repo_name> <remote_repo_github_address>
git remote -v
origin    https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin    https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
upstream  https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
upstream  https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)
  1. Push 本地代码到远端repo
git push <remote_repo_name> <branch_name>

相关文章

  • Git Fork 技巧

    日常工作中,经常会遇到一种情况,看到别人写的好的 repo 希望能够学习瞻仰,一番观摩之后发现一些问题,因而需要对...

  • GUI

    git-fork.com

  • Git fork

    参考文章 git fork项目合作流程 - 知乎GitLab Fork项目工作流程 - 简书 1:git remo...

  • git fork

    在项目中会出现同一套代码需要同时分多个版本,每个版本都还有差异,也需要和主工程的更新代码保持同步,这时我想到的使用...

  • git fork

    #biji 场景一:已有的一个项目,要把它托管到Git上去,步骤和方法如下: 方法一: ①在工程的路径下 git ...

  • Git fork

    需求,在已有代码基础上fork一份新代码,做一些特定修改。要求新项目能从upstream上更新,老项目没必要mer...

  • git fork

    fork 在GitHub上操作,复制目标仓库A(包括文件,提交历史,issues等)到自己的git账号下(称为A1...

  • [Git] git原理及使用

    目录: git原理 git fork & cherry-pick & rebase git打patch以及应用pa...

  • 2020-01-20 Git简单使用

    Git简单使用 1基本命令 2.分支操作 选择git仓库的不同分支 fork操作 fork了别人的代码,如何保持和...

  • iOS面试题之git试题

    1、什么是 Git 复刻(fork)?复刻(fork)、分支(branch)和克隆(clone)之间有什么区别? ...

网友评论

      本文标题:Git Fork 技巧

      本文链接:https://www.haomeiwen.com/subject/jgdlfhtx.html