用GIT做版本控制-并上傳至github-創(chuàng)新互聯(lián)

安裝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ū),還沒有提交。這樣我們就可以用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)知的開源項(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

用GIT做版本控制-并上傳至github

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)目

用GIT做版本控制-并上傳至github

創(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)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。

新聞名稱:用GIT做版本控制-并上傳至github-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://www.muchs.cn/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)

h5響應(yīng)式網(wǎng)站建設(shè)