华南俳烁实业有限公司

考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場(chǎng) | 考試論壇  
  當(dāng)前位置:操作系統(tǒng) > Unix > 文章內(nèi)容
  

在FreeBSD8.1下搭建Git服務(wù)器步驟

 [ 2017年2月7日 ] 【

Git是一個(gè)由林納斯•托瓦茲為了更好地管理linux內(nèi)核開發(fā)而創(chuàng)立的分布式版本控制/軟件配置管理軟件。與常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本庫的方式,不必服務(wù)器端軟件支持,使源代碼的發(fā)布和交流極其方便。 Git 的速度很快,這對(duì)于諸如 Linux kernel 這樣的大項(xiàng)目來說自然很重要。 Git 最為出色的是它的合并跟蹤(merge tracing)能力。

1、在FreeBSD8.1下安裝Git服務(wù)器

(1)用ports安裝Git

cd /usr/ports/devel/gitmake install clean

(2)修改/etc/rc.conf,讓git隨開機(jī)啟動(dòng)

git_daemon_enable=”YES”

(3)新增使用者git

pw useradd git

(4)啟用git daemon

/usr/local/etc/rc.d/git_daemon start

(5)用sockstat 來驗(yàn)證git是否啟動(dòng)

sockstt -4l | grep 9418root git-daemon 37064 3 tcp4 192.168.21.248:9418 *:*

2、如何導(dǎo)入一個(gè)新的Git項(xiàng)目

(1)首先把自己介紹給git系統(tǒng),比如自己的姓名和email地址,命令如下:

git config--global user.name "Andrew.yu"git config--global user.email " yuhongchun027@163.com"

(2)提交我的目錄/home/andrewyu/test進(jìn)Git項(xiàng)目庫

cd /home/andrewy/test/git initgit add .git commit

(3)這時(shí)候 大家可觀察我們的/home/andrewy/test的目錄

[root@research_jail ~/project]# ls -lsarttotal 82 -rw-r--r-- 1 root wheel 18 Apr 7 07:42 30 -rw-r--r-- 1 root wheel 0 Apr 7 07:42 20 -rw-r--r-- 1 root wheel 0 Apr 7 07:42 12 drwxr-xr-x 8 root wheel 512 Apr 7 07:42 .git2 drwxr-xr-x 3 root wheel 512 Apr 7 07:43 .2 drwxr-xr-x 4 root wheel 512 Apr 7 07:43 ..

Git init命令可用于初始化當(dāng)前所在目錄的這個(gè)項(xiàng)目,shell返回的提示表明已經(jīng)建立了一個(gè).git隱藏目錄來保存這個(gè)項(xiàng)目前的進(jìn)展信息。

3、Git命令行操作

查看源代碼和快照的區(qū)別

git diff

查看快照和倉(cāng)庫的區(qū)別

git diff --cached

查看整體改動(dòng)的信息

git status

告訴git我修改了hello.py文件,請(qǐng)檢查下(GIT中無論修改還是增加新文件均使用add進(jìn)行登記)

git add hello.py

提交到git

git commit

查看日志

git log

只回退commit的信息,但index file(就是臨時(shí)存儲(chǔ)區(qū)域)和修改的代碼仍然在

git reset --soft HEAD

不僅回退commit的信息,代碼也恢復(fù)到修改前的版本

git reset --hard HEAD

回退commit和index file的信息,保留代碼的修改

git reset --mixed HEAD

默認(rèn)情況等同于mixed

git reset HEAD

從index file中刪除一個(gè)已經(jīng)登記的文件

git reset -- a.py

創(chuàng)建branch-a分支

git branch branch-a

切換到branch-a分支

git checkout branch-a

將分支合并到主干(如果有沖突會(huì)提示沖突的地方,修改后再合并)

git merge branch-a

分支內(nèi)容合并到主干后刪除branch-a分支

git branch -d branch-a

不論分支內(nèi)容是否合并到主干,均刪除branch-a分支

git branch -D branch-a

克隆hello-git到hello-git2中

git clone /home/flynewton/hello-git hello-git2cd hello-git2

==========================================================

(1)修改hello-git2中的源代碼并提交

(2)創(chuàng)建分支branch-b,并修改分支中的源碼并提交

(3)進(jìn)入hello-git文件夾中

==========================================================

將hello-git2主干代碼作為本地的新分支hello2-works

git fetch /home/flynewton/hello-git2 master:hello2-works

查看本地主干和hello2-works分支的差異

git -p master..hello2-works

合并hello-git2的主干到本地

git pull /home/flynewton/hello-git2 master

合并hello-git2的分支到主干

git pull /home/flynewton/hello-git2 branch-b

在公司的開發(fā)環(huán)境中,主要是用SVN來用作版本管理,Git目前處于測(cè)試階段,感覺它用來添加項(xiàng)目的子目錄不是特別理想,另外,分支合并時(shí)產(chǎn)生的Merge問題也讓人很煩燥,相反,SVN在這些方面都做得很好;我建議大家目前以SVN為主,Git為輔來進(jìn)行我們的代碼管理工作。

本文糾錯(cuò)】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動(dòng)訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請(qǐng)鏈接 | 意見留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved
沂源县| 广灵县| 天祝| 台山市| 乃东县| 尼勒克县| 永福县| 左贡县| 广德县| 镶黄旗| 故城县| 马山县| 达拉特旗| 洛宁县| 清水县| 清水河县| 阜康市| 黄骅市| 绥棱县| 田东县| 建德市| 乌鲁木齐市| 新巴尔虎右旗| 慈利县| 永登县| 乌苏市| 黔西| 麦盖提县| 中卫市| 扎赉特旗| 峨眉山市| 宣武区| 千阳县| 邛崃市| 沈丘县| 含山县| 资中县| 武功县| 吉首市| 日土县| 襄樊市|