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/ 自定義域名