Git是一個知名且廣泛使用的分散式版本控制軟體。主要作用為紀錄專案中的檔案變更,並提供恢復到某版本、多個模組同時開發等等。而Git作為Linux核心開的版本控制系統,知名度高,相當快速,且有大量資源。
根據您所使用的作業系統,可以到Git官方網站上下載並安裝。Windows可以點此下載,Mac OS X可以點此下載,Linux請依據各發行版自行使用套件管理系統安裝。另外這裡有一份圖形化介面的軟體列表,可以安裝這些軟體方便地使用Git。
以下介紹常用的Git指令,並詳細的介紹與教學,請參考Git的資源部分:
git config
這個指令會設定Git的設定值,第一次安裝完成之後,請務必設定自己的名字與信箱,因為Git是利用名字與信箱來分辨貢獻者。
設定的方式為:
與git config --global user.name "<Your name>"
,建立在名字與信箱的部份加上引號。git config --global user.email "<Your email>"
例如我的名字是:SNMG
,信箱是:snmg@csie.ncu.edu.tw
,則我必須輸入
以及git config --global user.name <SNMG>
這樣便完成的名字與信箱的設定。
git config --global user.email <snmg@csie.ncu.edu.tw>
git init
這個指令會在目前的目錄建立一個新倉庫,大部分Git的操作都需要有倉庫才能進行。
git clone <url>
這會指令會將url
所指定的倉庫複製到目前目錄。
git add <filename>
這個指令會將filename
所指定的檔案加入到倉庫追蹤當中,如果檔案沒有先加入倉庫追蹤的話,Git是不會對該檔案進行版本管理。
git commit
這個指令會將有追蹤並且修改過的內容提交,提交時Git會要求必須輸入修改的內容。提交之後會有一個唯一識別號,可以透過這個識別號去查看之前的修改與說明。
git pull
這個指令會將遠端(如果不是使用clone
的話,需要先透過git remote add <url>
先設定)的倉庫與本地的倉庫同步並合併。如果有衝突的話Git會要求解決衝突之後再commit
。
git push
這個指令會將目前本地倉庫的commit
上傳到遠端伺服器中,上傳到伺服器之前務必確定已經用git pull
將本地倉庫更新並且解決所有衝突。另外,第一次推送時,必須使用:
才能夠在遠端建立git push origin master
branch
並且將遠端伺服器設定為預設推送的伺服器。
以下列出Git的部份資源,可以自行學習,若有不明白之處,也可以詢問我們或著身邊有使用的同學 :-)
GitHub是一個用於使用Git版本控制系統項目的共享虛擬主機服務。GitHub是一個非常流行的Git倉庫託管服務,許多開源軟體皆託管於GitHub上,例如:Linux Mint、phpBB、Prototype、Symfony 2、jQuery、Perl、Ruby、YUI、JUnit、PHP與Ruby on Rails等等。
GitHub上可以免費申請帳號,如果需求則可以付費成為付費會員。作品需要先從我們的倉庫Fork,並且作為自己的倉庫進行撰寫與更新,完成後發起Pull request。因為發起Pull request需要GitHub帳號才能夠進行,因此請務必註冊申請。