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,能够在主项目中引用公共库git
建立:github
- 创建公共代码库, lib.git和主项目A.git
- 在A项目下,执行git submodule add lib.git lib
- 此时发现A项目下多了.gitmodules文件,里面记录了子模块信息
修改:dom
- 公共库有更新,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/ 自定义域名