在FreeBSD 8.1下搭建Git服務(wù)器步驟
Git是一個(gè)由林納斯•托瓦茲為了更好地管理linux內(nèi)核開發(fā)而創(chuàng)立的分布式版本控制/軟件配置管理軟件。與常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本庫(kù)的方式,不必服務(wù)器端軟件支持,使源代碼的發(fā)布和交流極其方便。 Git 的速度很快,這對(duì)于諸如 Linux kernel 這樣的大項(xiàng)目來(lái)說(shuō)自然很重要。 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 來(lái)驗(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)目庫(kù)
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隱藏目錄來(lái)保存這個(gè)項(xiàng)目前的進(jìn)展信息。
3、Git命令行操作
查看源代碼和快照的區(qū)別
git diff
查看快照和倉(cāng)庫(kù)的區(qū)別
git diff --cached
查看整體改動(dòng)的信息
git status
告訴git我修改了hello.py文件,請(qǐng)檢查下(GIT中無(wú)論修改還是增加新文件均使用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來(lái)用作版本管理,Git目前處于測(cè)試階段,感覺(jué)它用來(lái)添加項(xiàng)目的子目錄不是特別理想,另外,分支合并時(shí)產(chǎn)生的Merge問(wèn)題也讓人很煩燥,相反,SVN在這些方面都做得很好;我建議大家目前以SVN為主,Git為輔來(lái)進(jìn)行我們的代碼管理工作。
相關(guān)文章
Unix,BSD,Linux系統(tǒng)三者的區(qū)別小結(jié)
這篇文章主要介紹了Unix,BSD,Linux系統(tǒng)三者的區(qū)別小結(jié),需要的朋友可以參考下2023-05-03
一些朋友問(wèn)小編FreeBSD如何添加硬盤?別擔(dān)心,今天小編就為大家分享FreeBSD添加硬盤的方法,希望對(duì)大家會(huì)有幫助,有需要的朋友一起去看看吧2017-04-06- 今天小編為大家?guī)?lái)的是Freebsd PF 安裝使用詳解,希望對(duì)大家會(huì)有幫助,有需要的朋友一起去看看吧2017-04-06
FreeBSD下zfs: failed with error 6錯(cuò)誤如何解決?
最近一些朋友問(wèn)小編 FreeBSD下zfs: failed with error 6錯(cuò)誤如何解決?今天小編要為大家?guī)?lái)的是 FreeBSD下zfs: failed with error 6錯(cuò)誤的解決方法,有需要的朋友一起去看2017-04-06Unix文件系統(tǒng)和pwd命令實(shí)現(xiàn)詳解
今天小編要為大家?guī)?lái)的是Unix文件系統(tǒng)和pwd命令實(shí)現(xiàn)詳解,希望對(duì)大家會(huì)有幫助,有需要的朋友一起去看看吧2017-04-01- 今天小編將為大家?guī)?lái)的是Unix中的dot命令詳解!希望對(duì)大家會(huì)有幫助!有需要的朋友一起去看看吧2017-03-22
freebsd時(shí)間設(shè)置小節(jié)詳解
近日!一些朋友對(duì)于freebsd時(shí)間設(shè)置小節(jié)存在疑慮!下面小編將為大家?guī)?lái)的是freebsd時(shí)間設(shè)置小節(jié)詳解!希望對(duì)大家會(huì)有幫助!有需要的朋友一起去看看吧2017-03-19- 今天小編要為大家?guī)?lái)的是grub2引導(dǎo)freebsd詳解!希望對(duì)大家會(huì)有幫助,有需要的朋友一起去看看吧2017-03-19
- 下面小編為大家?guī)?lái)的是FreeBSD10安裝內(nèi)核源代碼方法講解!希望能夠幫助到大家!有需要的朋友一起去看看吧2017-03-19
FreeBSD下如何使GraphicsMagick支持中文字體?
最近一些朋友在問(wèn)FreeBSD下如何使GraphicsMagick支持中文字體?今天小編為大家?guī)?lái)的是FreeBSD下使GraphicsMagick支持中文字體的方法!有需要的朋友一起去看看吧2017-03-15


