💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
[TOC] # Branches aren't just for Birds - 建立一个feature branch ## Branches Git 的 repositories 用 分支 branches来隔离进度。当需要跟其他人一起进行专案时,在你完成负责的部份之前,经常需要利用分支 branch来保护你对程序所做的修改。如此,你就可以让**'master' branch**保持稳定,不被未完成的修改影响。等到你完成在 branch 上的修改,就可以把它 合并 merge 回'master' 分支 branch。 ![](https://box.kancloud.cn/f3ff4e658a23f1fe567c96ad56f23fc9_715x299.png) 在GitHub Guide 中我们有提供解释 branches运作方式的示意图:[guides.github.com/overviews/flow](https://guides.github.com/overviews/flow/) ## GitHub Pages GitHub 会自动发布你放在'gh-pages' branch里的静态档案,并架设一个网站。由于你 forked 的项目内容是一个网站,所以它的预设 branch是'gh-pages' 而不是'master'。而你会发现这些网站,网址都长得像这样: ``` http://githubusername.github.io/repositoryname ``` ## 步骤:新增 分支 branch 当你新增 分支 branch 的时候,Git 会拷贝目前 分支 branch 上所有的档案到新的 分支 branch。 在命令行输入`git status`可以知道目前你在哪个分支 branch(应该会在'gh-pages')。 新增一个 分支 branch并命名为`「add-<username>」`,请用你的帐号名称替换掉'username'。例如「add-jlord」。**分支 Branches 的名字有分大小写,所以请确定输入的帐号名称跟GitHub 上显示的一模一样。** ``` $ git branch <BRANCH_NAME> ``` 水啦!你拥有了一个全新、内容跟'gh-pages' 一模一样的分支 branch! 就像命令行去另一个文件夹的指令`cd`一样,请 `checkout` 到刚才新增的 分支 branch: ``` $ git checkout <BRANCH_NAME> ``` ## 步骤:新增文件 接下来我们回到文字编辑器: * 新增一个文件并命名为`「add-<USER_NAME>.txt」`,请用你的帐号名称替换'username',像这样,「add-jlord.txt」。 * 在档案里写下你的GitHub 帐号名称。例如,我就会写'jlord'。 * 将档案存到在Patchwork里的'contributors'资料夹:**Patchwork/contributors/add-yourusername.txt** * 接着,把你的修改记录下来! ## 步骤:记录 按照以下的步骤,把刚才的修改用Git 记录下来: ``` $ git status $ git add <FILE_NAME> $ git commit -m "<commit message>" ``` 推送 Push 刚才记录好的修改到GitHub 上,你 forked 的 代码库 repository 里头: ``` $ git push origin <BRANCH_NAME> ``` ## File NOT in contributors folder 刚才新增的文件应该要放到Patchwork 代码库的'contributors'资料夹里。如果不小心放到别的地方,请打开Finder或是Windows的资源管理器将该文件移到'contributors'资料夹,然后可以用`git status`看你刚才移动文件之后所造成的结果。用以下的指令预备 Stage 并且 提交 commit 全部的修改(加上`-A`,会将新增文件跟删除文件的动作一起记录下来): ``` $ git add -A $ git commit -m "move file into contributors folder" ``` **分支 Branch name expected: _____** 分支 Branch的名字应该要跟你的帐号名称一模一样。用以下的指令修改分支 branch 的名字: ``` $ git branch -M <NEW_BRANCH_NAME> ``` ## Tips 只用一个指令就新增并切换到新的 分支 branch ``` $ git checkout -b <BRANCHNAME> ``` 创建新分支 branch ``` $ git branch <BRANCHNAME> ``` 切换到另一个 分支 branch ``` $ git checkout <BRANCHNAME> ``` 列出所有的 分支 branches ``` $ git branch ``` 重新命名目前所在的 分支 branch ``` $ git branch -m <NEWBRANCHNAME> ``` 看目前正在哪个 branch 上 ``` $ git status ```