什么是“版本控制”?我为什么要关心它呢? 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。 在本书所展示的例子中,我们对保存着软件源代码的文件作版本控制,但实际上,你可以对任何类型的文件进行版本控制。
git是非常优秀的分布式版本控制工具。
git status //查看git当前的状态
git log //查看git的提交记录
git add . //添加到git暂存
git commit -m 'message' //提交到git本地仓库
git push //推到git远程仓库
git checkout -b xx origin/xx //创建并同步远程分支
git stash list //查看存储区的列表
git stash save 'message' //存储当前修改的代码
git stash apply //应用存储区,默认第一个,@{index}选择
git stash pop //应用存储区(删除存储栈对应的stash),默认第一个,@{index}选择
git stash drop stash@{$index} //丢弃存储
git stash clear //清空所有存储
git reset --soft HEAD^
//回退版本(HEAD为版本号)
git reflog || git log //找到要回退的版本
git reset --hard HEAD
git rebase -i HEAD
git revert HEAD
//查看远程仓库的地址
git remote -v
//重置远程仓库地址
git remote set-url origin newUrl
git较常见的工作流采用"功能驱动式开发"(Feature-driven development,简称FDD)
需求是开发的起点,先有需求再有功能分支(feature branch)或者bug分支(bugfix branch)。完成开发后,该分支就合并到主分支,然后被删除。
项目为 master分支为主 ,存放稳定的分布版;
develop分支存放最新的开发版;
feature分支新功能的开发;
fixbug分支修复bug;