Git 新手入門
什麼是Git?
版本控制?
 本地端版本控制
版本控制?
 本地端版本控制
 集中式版本控制
版本控制?
 本地端版本控制
 集中式版本控制
 分散式版本控制
如何安裝Git?
Debian/Ubuntu:
($ apt-get update)
$ apt-get install git
Fedora:
$ yum install git
Windows:
http://msysgit.github.com/
初次設定Git
設定識別資料
$ git config --global user.name “名稱"
$ git config --global user.email XXX@yahoo.com
$ git config –list //檢視設定資料
說明文件
 $ git help <verb>
 $ git <verb> --help
 $ man git-<verb>
EX:$ git config --help
 需安裝套件
 $git apt-get install man
開始使用Git版本控制
 $ git init //在現有目錄初始化儲存庫
 $git clone url //複製現有的儲存庫
 $ git add filename //把檔案加入暫存區//把檔案加入追蹤
 $ git commit //把暫存區檔案提交
 $ git commit -m ‘提交說明‘ //把暫存區檔案提交並加上說明
 $ git commit -a -m ‘提交說明’ //把檔案直接提交
 $ git status //檢視檔案的狀態
 $ git log //檢視提交的歷史記錄
 $ git commit –amend //更動最後一筆更新
 $ git mv file_from file_to //在Git中更名某個檔案
 $ git reset HEAD filename //檔案移出暫存區
分支(branch)
使用分支意味著你可以從開發主線上分離開來,然後在不影響主線的同時繼續工作。
在很多版本控制系統中,這是個昂貴的過程,常常需要創建一個原始程式碼目錄的
完整副本,對大型項目來說會花費很長時間。
 $ git branch //查看目前分支
 $ git branch 分支名稱 //建立新分支
 $git checkout 分支名稱 //切換到某分支
 $ git checkout –b 分支名稱 //建立新分支並切換
 $ git branch –d 分支名稱 //刪除到某分支
$git branch bugFix
$git checkout bugFix
$ git checkout –b bugFix
合併branch的兩個方式
 Merge
 Rebase
通常用於簡化歷史紀錄
merge  $git merge bugFix
rebase  $ git rebase master
回復到上一次commit
 Reset
reset完不可commit到遠端上
 Revert
可用於遠端回復
reset  $git reset HEAD~1
revert  $git revert HEAD
遠端
 $git remote //顯示所有的遠端儲存庫
 $git remote add shortname url //新增遠端儲存庫
 $git fetch remote-name //從遠端儲存庫擷取或合併
 $git pull remote-name branch-name //自動擷取及合併遠端分支到目錄的分支
 $git push remote-name branch-name //上傳到遠端儲存庫
Git 命令別名
 $ git config --global alias.co checkout
 $ git config --global alias.br branch
 $ git config --global alias.ci commit
 $ git config --global alias.st status
 $ git config --global alias.unstage 'reset HEAD --‘
 EX git unstage filename
GitHub
建立 repository
建立 repository
上傳資料
 $git remote add myRemo(此自命名) GitHubrepoURL
GitHubrepoURL(EX:http://github.com/github帳號/repository名稱.git)
 $git fetch myRemo
 $git pull myRemo master
 $git push myRemo master
Git學習資源
 Git官網:http://git-scm.com/
 Git圖形化學習:http://pcottle.github.io/learnGitBranching/?demo
 GitHub官網:https://github.com/

Git初步入門