安裝Git
創(chuàng)新互聯(lián)自2013年創(chuàng)立以來(lái),先為禹州等服務(wù)建站,禹州等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為禹州企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。源碼安裝:
Git的工作需要調(diào)用curl,zlib,openssl,expat,libiconv等庫(kù)的代碼,首先安裝依賴環(huán)境:
# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
之后在git官網(wǎng)下載最新的版本源代碼:
http://git-scm.com/download
然后編譯并安裝:
# tar -zxvf git-1.8.4.2.tar.gz # cd git-1.8.4.2 # make prefix=/usr/local all # make prefix=/usr/local install
初次運(yùn)行g(shù)it前的配置
用戶信息:
第一個(gè)要配置你個(gè)人的用戶名和電子郵件地址,每次提交時(shí)都會(huì)引用這兩條信息
# git config --global user.name "Leon Hao" # git config --global user.email haolulue@163.com
文本編輯器:
設(shè)置默認(rèn)使用的文本編輯器。Git需要你輸入一些額外信息的時(shí)候,會(huì)自動(dòng)調(diào)用一個(gè)外部文本編輯器給你用。默認(rèn)操作系統(tǒng)指定默認(rèn)編輯器,一般可能會(huì)是vi或者vim,如果你有其他的偏好,比如Emacs的話,可以重新設(shè)置:
# git config --global core.editor emacs
差異分析工具:
還有一個(gè)比較常用的是,在解決合并沖突時(shí)使用哪種差異分析工具。比如要改用vimdiff的話:
# git config --global merge.tool vimdiff
查看配置信息:
要查看已有的配置信息,可以使用git config --list命令:
[root@SK-UAT-MYSQL /]# git config --list user.name=Leon Hao user.email=haolulue@163.com
設(shè)置第一個(gè)倉(cāng)庫(kù):
進(jìn)入Rails的程序根目錄下,也可以自己手動(dòng)創(chuàng)建一個(gè)目錄,然后進(jìn)入創(chuàng)建的目錄中
初始化一個(gè)空的倉(cāng)庫(kù)
# git init
Git默認(rèn)會(huì)跟蹤所有的文件,但是有一些文件是我們不需要跟蹤的,例如Rails(ruby)會(huì)創(chuàng)建一些日志文件記錄應(yīng)用程序的動(dòng)作,這些文件經(jīng)常變化,我們不需要版本控制系統(tǒng)跟蹤這些文件,git有忽略文件的機(jī)制:在應(yīng)用程序的根目錄創(chuàng)建一個(gè)名為.gitignore的文件,然后寫入一些規(guī)則告訴git忽略哪些文件即可:
Rails命令默認(rèn)創(chuàng)建的.gitignore文件
# See http://help.github.com/ignore-files/ for more about ignoring files. # # If you find yourself ignoring temporary files generated by your text editor # or operating system, you probably want to add a global ignore instead: # git config --global core.excludesfile '~/.gitignore_global' # Ignore bundler config. /.bundle # Ignore the default SQLite database. /db/*.sqlite3 /db/*.sqlite3-journal # Ignore all logfiles and tempfiles. /log/*.log /tmp
我們?cè)偌尤胍恍┮?guī)則,修改這個(gè)文件即可:(為了篩選出配合ruby使用,自己可以根據(jù)自己需要修改)
# See http://help.github.com/ignore-files/ for more about ignoring files. # # If you find yourself ignoring temporary files generated by your text editor # or operating system, you probably want to add a global ignore instead: # git config --global core.excludesfile '~/.gitignore_global' # Ignore bundler config. /.bundle # Ignore the default SQLite database. /db/*.sqlite3 /db/*.sqlite3-journal # Ignore all logfiles and tempfiles. /log/*.log /tmp # Ignore other unneeded files. doc/ *.swp *~ .project .DS_Store .idea
添加文件并提交:
把rails項(xiàng)目中的文件添加到git中,然后提交結(jié)果,git會(huì)按照.gitignore中的規(guī)則忽略文件
# git add .
查看狀態(tài):
通過(guò)這個(gè)命令你可以看到你提交那些文件,那些文件發(fā)生了改變
# git status
結(jié)果如下:
# 位于分支 master
# 要提交的變更:
# (使用 "git reset HEAD <file>..." 撤出暫存區(qū))
#
# 修改: README.md
#
添加注釋:
添加commit,記錄git你改變了哪些改動(dòng):
# git commit -m "add README.MD"
結(jié)果:
[master 9e22467] add README.MD
1 file changed, 1 insertion(+), 1 deletion(-)
查看提交歷史信息:
# git log
結(jié)果:
commit 9e22467c28fffff0c81e088d7787672489a87a3d
Author: Leon Hao <haolulue@163.com>
Date: Wed Oct 30 17:38:24 2013 +0800
add README.MD
commit 7179995695f7f8852dd3d4e2b6b3ef63878d6cfb
Author: Leon Hao <haolulue@163.com>
Date: Wed Oct 30 15:30:45 2013 +0800
add README file
commit 29001e46fdcee1838215416f558d4a5110a6834e
Author: Leon Hao <haolulue@163.com>
Date: Wed Oct 30 15:25:26 2013 +0800
doccenter commit
撤銷這次改動(dòng):
可以看到一個(gè)文件被刪除了,但是這個(gè)改動(dòng)只發(fā)生在工作區(qū),還沒(méi)有提交。這樣我們就可以用checkout命令切換到前一個(gè)提交記錄來(lái)撤銷這次改動(dòng)(其中-f意思是復(fù)制當(dāng)前的改動(dòng))
# git checkout -f
分支,編輯,提交,合并
分支:
Git中的分支功能很強(qiáng)大,分支是對(duì)倉(cāng)庫(kù)的復(fù)制,在分支中所做的改動(dòng)不會(huì)影響父級(jí)文件,大多數(shù)情況下,父級(jí)倉(cāng)庫(kù)是master分支,可以使用checkout命令,并指定-b創(chuàng)建一個(gè)新分支。
# git checkout -b testfz
查看分支:
# git branch
編輯:
# git mv README.rdoc README.md
提交:
查看狀態(tài)
# git status
添加:
# git add .
注釋:
# git commit -a -m "add"
-a:將現(xiàn)有的文件的所有改動(dòng)(包括使用git mv創(chuàng)建的文件,對(duì)git來(lái)說(shuō)并不是一個(gè)新的文件)添加進(jìn)來(lái)
合并:
# git checkout master
結(jié)果:
切換到分支 'master'
# git merge testfz
結(jié)果:
更新 9e22467..3d64e79
Fast-forward
README.md | 1 -
1 file changed, 1 deletion(-)
清理分支:
# git branch -d testfz
GitHub
已經(jīng)將項(xiàng)目代碼納入git版本控制系統(tǒng),現(xiàn)在將其推送到github了,github是一個(gè)針對(duì)git倉(cāng)庫(kù)及分享社交平臺(tái),將代碼拷貝存放一份到github有兩個(gè)目的:其一是對(duì)代碼的完整備份(包括完整的提交歷史),其二方便以后的協(xié)作,這一步不是必須要做的,不過(guò)加入github可以給你提供機(jī)會(huì)參與到更廣為認(rèn)知的開(kāi)源項(xiàng)目來(lái)
1、首先需要到github注冊(cè)帳號(hào)
注冊(cè)地址:https://github.com/
2、創(chuàng)建ssh keys
用于通過(guò)key的方式將git項(xiàng)目推送至github中
官方說(shuō)明:
https://help.github.com/articles/generating-ssh-keys#platform-linux
# cd ~/.ssh/ # ssh-keygen -t rsa -C "haolulue@163.com"
將ssh key添加再自己的github中,連接為
https://github.com/settings/ssh
3、創(chuàng)建倉(cāng)庫(kù)的連接,設(shè)置如下:
https://github.com/new
4、上傳至github中
# git remote add origin git@github.com:haoxiaolu/doccenter # git fetch # git commit -a -m "add file" # git add . # git push
5、已經(jīng)完成,可以直接再github中查看自己的項(xiàng)目
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國(guó)云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開(kāi)啟,新人活動(dòng)云服務(wù)器買多久送多久。
新聞名稱:用GIT做版本控制-并上傳至github-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://jinyejixie.com/article28/hgdcp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷推廣、商城網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、品牌網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容