Github 知识分享
简介:GitHub是用于版本控制和协作的代码托管平台。它可以让您和其他人在任何地方协同工作。
主要功能介绍:
创建和使用存储库: New repository
创建启动并管理新分支: 权威主分支:master,对分支进行修改,可以提取更新到主分支.
切换到其他分支:git checkout 分支名
对文件进行更改并将其作为提交,
打开pull请求(合作核心):通过拉取需求方式推送到GitHub,在创建拉取请求前对比查看更改差异,确认修改之后便可创建拉取请求;
合并拉取请求:打开并合并拉取请求,审核讨论;
仓库配置及初始化命令
Git config –global user.name/email ‘your name/your email’
Git remote add origin ***.git 连接远程仓库
更改,git add file_changed
提交 git commit -m ‘some note’
Git 的基本流程如下:
- 创建或修改文件
- 使用 git add 命令添加新创建或修改的文件(未追踪)到本地的缓存区(Index)
- Git diff –cached 可以查看缓存中被修改的文件
- 使用 git commit 提交修改命令提交到本地代码库
- (可选,有的时候并没有可以同步的远端代码库)使用git push命令将本地代码库同步到远端代码库
- 分支与合并
分支功能:
Git 的分支可以让你在主线(master 分支)之外进行代码提交,同时又不会影响代码库主线。一个 Git 仓库可以维护很多开发分支。
例如,创建一个新的叫 newbran的分支:
1 | $ git branch newbran |
运行 git branch 命令可以查看当前的分支列表,以及目前的开发环境处在哪个分支上:
1 | $ git branch |
切换分支
git checkout 分支名 可以切换到其他分支
合并分支
分支下修改后 git merge 命令来合并 分支到主线分支 master:
git merge -m ‘注释信息’ 分支名
如果主分支都修改了,合并会冲突,可以通过git diff 查看缓冲区中的改变内容。可以手动去冲突<<<<符号,然后add + commit添加到缓冲区在提交。
合并后可以删除分支。
git branch -d 分支名(-d已合并,-D强制删除未合并的)
撤销合并
1 | git reset --hard HEAD^ |
快速向前合并
还有一种需要特殊对待的情况,在前面没有提到。通常,一个合并会产生一个合并提交(commit), 把两个父分支里的每一行内容都合并进来。
备注:
但是,如果当前的分支和另一个分支没有内容上的差异,就是说当前分支的每一个提交(commit)都已经存在另一个分支里了,Git 就会执行一个 快速向前(fast forward)操作;
Git 不创建任何新的提交(commit),只是将当前分支指向合并进来的分支。