赞
踩
12年的時候我就在Github註冊了一個帳號, 也在Windows7的環境下使用過一段時間, 在windows下我更多是使用GUI(github提供了一個客戶端), 完全體會不到版本控制的過程。 去年(14), 在工作的過程中, 我使用到了SVN這樣的版本控制軟件, 算是對版本控制稍微有點瞭解, 現在我決定用正確的方式來做一個項目, 所以各方面都力圖使用正確的手段, 考慮到 Git在開源社區的影響力, 我決定使用Git來託管代碼。
在使用之前可以查閱一些關於git以及github的資料, 做一些簡單的準備, 本文描述一下我首次配置的一些基本情況:
Step 1: 安裝Git
第一步肯定是要安裝Git, 在ubuntu的終端下可以執行下面的命令:
sudo apt-get install git git-core git-gui git-doc git-svn git-cvs gitweb gitk git-email git-daemon-run git-el git-arch
step 2: 設置SSH鏈接以及git信息:
對於代碼託管說, 要區分本地代碼以及服務器上的代碼, 那麼在本地你要能夠遠程鏈接服務器, 這裏通過SSH進行鏈接。
(1)先檢查一下SSH能不能鏈接:
ssh -T git@github.com
如果看到:
- Warning: Permanently added ‘github.com,204.232.175.90′ (RSA) to the list of known hosts.
- Permission denied (publickey).
则说明可以连接。
(2)检查~/.ssh目录下是否有id_rsa(私钥)和id_rsa.pub(公钥)文件,正常情況下是有的(.ssh是隱藏文件, 注意執行命令時候的目錄位置), 如果沒有則要輸入:
ssh-keygen -t rsa -C "your email"
(3) 在瀏覽器下進入github主頁面:Account settings -> SSH Keys -> Add SSH Key,将id_rsa.pub文件中的字符串复制进去(整個文件完全複製, 不要忽略任何東西)
(4)再次检查SSH连接情况:
ssh -T git@github.com
正常情況下, 會提示你可以鏈接了, 那麼你就可以在本地鏈接github了
(5)設置git的個人信息:
這裏就是設置用戶名與郵箱, 在終端輸入:
- git config --global user.name "name"
- git config --global user.email "email"
step 3 : 使用github進行個人代碼託管
你可以現在瀏覽器創建project, 然後clone到本地
git@github.com:username/projectname.git(username填你的註冊的github的用戶名, projectname填你要clone的項目的名字)
下面通過本地git操作, 然後通過ssh遠程鏈接到服務器, 進行本地與服務器上的代碼的同步, 比如要給project添加一個文件(README 爲例)
使用下面的命令:
- git init
- touch README
- git add README
- git commit -m 'first commit'
- git remote add origin git@github.com:username/projectname.git
- git push -u origin master
- git fetch origin # 取得远程更新(到origin/master),但还没有合并
- git merge origin/master # 把更新的内容(origin/master)合并到本地分支(master)
- git pull origin master # 相当于fetch和merge的合并,但分步操作更保险
A. 先在瀏覽器上選擇你要fork的項目, 點擊fork按鈕,使用shell命令, 將該項目clone到你本地:
$ git clone git@github.com:username/projectname.git
B. 当你克隆了一个项目之后.它有一个默认的remote.叫做.origin.这是指你是在github上fork的.而不是在原来的仓库.为了跟踪原本的仓库,你需要添加另一个叫做upstream的选项.
- $cdprojectname
-
- $git remote add upstream git://github.com/username/projectname.git
-
- $git fetch upstream
$gitpush origin master
D. 接收upstream变更如果你fork的那个原来的仓库改变了,你可以使用下面的命令来更新你fork到本地的仓库.
- $git fetch upstream
-
- $git merge upstream/master
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。