git、gitflow、github学习心得
source link: http://blog.csdn.net/yeahugo/article/details/7232380Git 是 Linux 的创始人 Linus Torvalds 开发的开源和免费的版本管理系统,利用底层文件系统原理进行版本控制的工具。Git是目前为止最著名运用最好最受欢迎的分布式的配置管理工具。 早期的版本控制系统以svn为代表属于集中
source link: http://blog.csdn.net/yeahugo/article/details/7232380
Git 是 Linux 的创始人 Linus Torvalds 开发的开源和免费的版本管理系统,
早期的版本控制系统以svn为代表属于集中式版本库模式,
以git为代表的分布式版本控制系统,
1.由于不需要与中央服务器进行通信,因此一般的操作(如提交,
2.
鼓励测试性的branch - 创建或者销毁branch的操作简单而且快速.
Mercurial是与git类似的分布式版本管理系统。
Git有一个被称为"staging area"的区域.在你向代码库提交之间, 你可以在这个中间区域中构建你的提交.更为重要的是,
使用git init 命令后,就会创建一个.git目录,git add 添加到staging area区域,
git commit 提交修改,
git branch RB1.0 master,在主分支上创建RB1.0的分支,
git check ***,切换不同分支。
git tag1.0 RB_1.0 为RB_1.0的分支打上1.0的标签。
git rebase,顾名思义,就是重新定义(re)起点(base)
假如现在我们的版本库如下:
master0(初始化后的版本)
||
master1===test0==>test1===>
||
master2===>master3
我们切换到master分支,然后运行下面的命令,
git rebase test
git reset 回退到某次提交后的为暂存状态
git diff 查看文件差异
git clone 创建远程版本库的本地拷贝,从一个远程叫做“origin”
git pull 需要加入远程版本库名称和远程分支名。可以顺序完成两件事,
git fetch 和pull 类似,不过不会做任何合并。
git push 可以指定推入版本库推入。
gitflow
· git flow是一套管理基于git 的管理branch的模型流程,屏蔽了git的底层命令,
主要分支:
master:永远在production-ready状态。
develop:最新的下次发布开发状态。
支援分支:
feature branches:开发新功能从develop分支出来,
release branches:准备要release的版本,只修bugs。
hotfix branches:
在mac下命令行输入brew install git-flow安装。
使用git flow init 初始化。
初始化会自动生成上述的分支。
有任何开发,先开branch
git flow feature start feature1
完成后输入 git flow feature finish feature1 会自动合并回develop并删除这个branch
push 一个feature branch到远端
git flow feature publish feature1 或git push origin feature/feature1
追踪一个远端branch
git flow feature track feature1 或git checkout -b feature/feature1 -t origin/feature1
如果你在’追踪分支''(Tracking Branches)上执行推送(push)或拉取(pull)
github的使用原则是:
与gitflow类似的工作流或者版本管理工具还有
redmine 基于ROR的项目管理工具,需要插件
DOTProject 基于LAMP项目管理工具
phabricator 开源的code review+repository browser+bug tracker+wiki facebook开源出来
gerrit 成熟的代码review流程
youtrack 问题跟踪,bug跟踪
trakr 提供直观的工作流
上述都没有亲自对流程使用,并不能提供每个优劣比较。
github
GitHub 是一个用于使用Git版本控制系统的项目的基于互联网的存取服务
GitHub可以托管各种git库,并提供一个web界面,
在GitHub进行分支就像在Facebook进行交友一样,
开源项目可以免费托管,但私有版本库则并不如此。
githup的安装参见github的主页,需要安装git,
类似的社区化代码托管网站bitbucket,
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)