Git/Git-flow使用心得

摘要:摘要: Git

1 基础使用 git是很好用的分布式版本管理系统 github是在线的,广泛使用online的git。free用户,所有的代码都是公开的!想使用更多功能,比如私有仓库,ok,付费……(当然,很多公司会自己搭建git,比如我用的是repo,命令都是一样的) git命令很多,但日常工作需要掌握的也没几个: 在github的setting中添加你的id_rsa.pub git remote add origin <git_url> 添加远程仓库 git add <files> 添加同时添加多个文件/夹 git commit -m '你的描述,最好是英文' git reset (--hard) <paths> 回到最新的commit,撤销所有的add/commit(--hard不保留修改,慎用) git pull --rebase origin master 从远程抓取最新的修改,忽略别人的commit(多人合作时非常重要!) git push origin master:master 推送远程仓库,收工~

2 分支管理/开发流程 git-flow 很棒的版本管理流程 develop, master, feature, release, hotfix feature 新开发分支,基于dev;结束时合并到dev release 基于dev,即将发布(用于测试);结束时合并到dev和master; hotfix 基于master,积极修复bug;结束时合并到dev和master 3 子模块

关于公共代码库,git 有个机制是submodule,可以在主项目中引用公共库

创建:

建立公共代码库, lib.git和主项目A.git 在A项目下,执行git submodule add lib.git lib 此时发现A项目下多了.gitmodules文件,里面记录了子模块信息

修改:

公共库有更新,A项目并不随之更新,必须收到跳到A的lib目录下,更新即执行git pull origin master. git status出现modified: lib (new commits) 此时提交这个变动,其余人的A项目更新后也会出现步骤2 其余伙伴必须执行git submodule update!!!! 如果此时小伙伴不更新,便把lib提交,这时Lib的版本又回退了,这是个坑!!!!!!

更新url:

编辑.gitmodule的url git submodule sync 可同步更改到.git/conf中submodule的更改 此时到对应目录下,手动git pull origin master commit 此次改动,这时公共库便同步到了remote; 4 个人主页

jekll生成页面 https://help.github.com/articles/using-a-custom-domain-with-github-pages/ 自定义域名