最近開始使用git對kohana3的文件做一些補充的工作,使用了git 和 github ,從了解到使用,還是有一點距離,下面是總結的一些方法。
1、git的安裝
我使用了ubuntu 10.04 ,預設情況下,ubuntu 中並沒有安裝,所以首先需要在系統中進行 git 的安裝。
sudo apt-get install git-core
安裝完成後,在終端中輸入 git 就可以看到相關的命令了。如果只是需要使用git來管理本地的**,那麼現在就可以使用了。如果需要和github上的專案結合,還需要做其他的一些操作。
2、github帳號的申請
如果只是需要將github上感興趣的**拷貝到本地,自己進行修改使用,而不打算共享發布的話,其實不申請帳號也沒有關係,只需要 git clone **到本地就可以了。本文對這種方法不做討論,畢竟使用 github 就是為了開源的目的。
首先去 github.com 上註冊乙個帳號,具體的註冊流程就不贅述了。
3、在本地建立乙個資料夾,然後做一些全域性變數的初始化
git config --global user.name = "使用者名稱或者使用者id"
git config --global user.email = "郵箱"
這兩個選項會在以後的使用過程中自動新增到**中。
4、建立驗證用的公鑰
這個是比較複雜和困擾大多數人的地方,因為 git 是通過 ssh 的方式訪問資源庫的,所以需要在本地建立驗證用的檔案。
使用命令:ssh-keygen -c 'you email [email protected]' -t rsa
會在使用者目錄 ~/.ssh/ 下建立相應的金鑰檔案
可以使用 ssh -v [email protected] 命令來測試鏈結是否暢通
5、上傳公鑰
在 github.com 的介面中 選擇右上角的 account settings,然後選擇 ssh public keys ,選擇新加。
title 可以隨便命名,key 的內容拷貝自 ~/.ssh/id_rsa.pub 中的內容,完成後,可以再使用 ssh -v [email protected] 進行測試。看到下面的資訊表示驗證成功。
進行到這裡,我們也可以利用github來管理我們的專案和參與開源工作了,大體上使用git分為三種方式。
管理自己的專案
這種情況是自己在本地有一些**,需要利用 github 來管理自己的專案,可以按照下面的步驟進行。
1、建立倉庫
在需要建立專案的資料夾中,使用 git init 進行倉庫的建立。完成後,可以看到檔案家中多了乙個 .git 隱藏目錄。
2、新增檔案
使用 git add . 來進行初始檔案的新增。這裡 . 表示將資料夾下所有的檔案都新增進去,我們也可以指定檔案進行新增。
3、提交檔案
使用 git -m commit -m 'comment' 提交,可以將編輯的內容進行提交。
通過 git show 可以看到專案的一些狀態。
這是**已經在本地管理了,但是本地管理完全體現不出git的優勢。
利用github託管自己的專案
1、如果需要將自己的專案託管在github.com上,首先需要建立專案。在 dashboard 中選擇 create new repository,填入相關資訊後,專案就建立成功了。
2、之後,會有乙個如何上傳的提示,如下圖已經很詳細了。
fork別人的專案
1、首先需要去自己感興趣的專案中進行fork,fork出自己的乙份分支來。fork之後,一般可以看到乙個ssh訪問的位址。例如:[email protected]:cocowool/userguide.git
2、複製**
使用 git clone [email protected]:cocowool/userguide.git userguide 可以將**複製到本地的 userguide 資料夾中
3、進行自己的修改,完成後請求原作者合併
git pull person master
下面是一些比較有用的命令的介紹:
# 建立乙個版本庫參考資料:git init
# 每次修改好了後,可以先將修改存入stage(快照/索引)中
git add<modified files>
# 修改了大量檔案則使用下面這個命令批量存入
git add .
# 使用commit將快照/索引中的內容提交到版本庫中
git commit -m
"msg"
# 也可以將git add與git commit用乙個指令完成
git commit -a
-m"msg"
# 將本地的git檔案與github(遠端)上的同步
git push
# 將github(遠端)的git檔案與本地的同步(即更新本地端的repo)
git pull
# 例如,pull指令其實包含了fetch(將變更複製回來)以及merge(合併)操作
git pull git://github.com/tom/test.git
# 另外版本控制系統的branch功能也很有意思,若同時修改bug,又要加入新功能,可以fork出乙個branch:乙個專門修bug,乙個專門加入新功能,等到穩定後再merge合併
git branch bug_fix # 建立branch,名為bug_fix
git checkout bug_fix # 切換到bug_fix
git checkout master #切換到主要的repo
git merge bug_fix #把bug_fix這個branch和現在的branch合併
# 若有remote的branch,想要檢視並checkout
git branch -r
# 檢視遠端branch
git checkout -b bug_fix_local bug_fix_remote #把本地端切換為遠端的bug_fix_remote branch並命名為bug_fix_local
# 還有其它可以檢視repo狀態的工具
git log #可以檢視每次commit的改變
gitdiff#可以檢視最近一次改變的內容,加上引數可以看其它的改變並互相比較
git show #可以看某次的變更
# 若想知道目前工作樹的狀態,可以輸入
git status
1、git與github在windows環境下的使用指南
2、使用git管理源**
3、git/github使用小記
4、使用git與github管理開發
git與github在ubuntu下的使用
這篇文章更好 最近開始使用git對kohana3的文件做一些補充的工作,使用了git 和 github 從了解到使用,還是有一點距離,下面是總結的一些方法。1 git的安裝 我使用了ubuntu 10.04 預設情況下,ubuntu 中並沒有安裝,所以首先需要在系統中進行 git 的安裝。sudo ...
git與github在ubuntu下的使用
最近開始使用git對kohana3的文件做一些補充的工作,使用了git 和 github 從了解到使用,還是有一點距離,下面是總結的一些方法。1 git的安裝 我使用了ubuntu 10.04 預設情況下,ubuntu 中並沒有安裝,所以首先需要在系統中進行 git 的安裝。sudo apt get...
git與github區別與簡介
git 是乙個版本管理工具,是可以在你電腦不聯網的情況下,只在本地使用的乙個版本管理工具,其作用就是可以讓你更好的管理你的程式,比如你原來提交過的內容,以後雖然修改了,但是通過git這個工具,可以把你原來提交的內容重現出來,這樣對於你後來才意識到的一些錯誤的更改,可以進行還原。總的來說git是一種版...