歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

GIT在Linux上的安裝和使用簡介


GIT在Linux上的安裝和使用簡介   GIT最初是由Linus Benedict Torvalds為了更有效地管理Linux內核開發而創立的分布式版本控制軟件,與常用的版本控制工具如CVS、Subversion不同,它不必服務器端軟件支持,速度和效率也有著相當程度的提高。   www.2cto.com   如果擁有CVS或者SVN的使用背景,那麼更熟悉的方法是客戶端-服務器端模式,所有的文件倉庫(repository)都是存放在服務器上的,用戶需要在本地安裝客戶端去服務器上的項目中獲取舊版本,提交新版本。   GIT拋棄了這種模式,當用戶從遠端GIT倉庫下載一個工程(project)時,這個工程的所有文件,包括版本歷史,文件改動都會下載下來,這時 候本地GIT就演變成了一個服務器,所有的提交(check-in)、提出(check-out)都會在這個本地服務器上執行,當你確定一項修改之後,可 以再和遠端倉庫進行合並和同步(merge)。所以,GIT的安裝和配置步驟無論在本機還是服務器上都是完全一樣的。   這裡簡單地介紹GIT在Linux上的安裝和使用,算做一個新手入門的簡單教程。另外,GIT是有Windows上的客戶端的。 1、下載和安裝GIT 從這裡 http://git-scm.com/download 下載GIT或者使用wget命令獲取   $ cd $ wget http://kernel.org/pub/software/scm/git/git-1.7.6.tar.bz2   以上地址若是無法下載到的話,請到http://download.csdn.net/detail/lovejuan007/3713236 下載   解壓後切換到其目錄   www.2cto.com   $ tar xvfj git-1.7.6.tar.bz2 $ cd git-1.7.6   使用默認配置進行安裝,如果想修改配置,可以使用 ./configure --help 來獲取幫助   $ ./configure $ make $ make install   2、初始化配置 GIT默認安裝在 /usr/local/bin ,安裝之後可以驗證一下是否安裝好   $ whereis git git: /usr/local/bin/git $ git  --version git version 1.7.6 $ git  --help   首先需要指定用戶名和電子郵件地址   $ git config  --global user.name “GIT Admin” $ git config  --global user.emal [email protected]   再驗證一下配置信息   www.2cto.com   $ git config  --list user.name=GIT Admin [email protected] core.repositoryformatversion=0 core.filemode=true core.bare=false core.logallrefupdates=true   其實這些配置是存放在個人主目錄下的 .gitconfig 文件中的   $ cat ~/.gitconfig [user] name = GIT Admin email = [email protected]   3、建立工程 本地存儲的任何一個目錄都可以建立GIT工程,如果已有工程位於 /home/obugs/projects/orangebugs 目錄,就可以把這目錄定義為GIT工程 $ cd /home/obugs/projects/orangebugs $ git init Initialized empty Git repository in /home/obugs/projects/orangebugs/.git/   這樣就建立了一個名為 .git 的文件夾,這就是GIT用來存儲信息和跟蹤改動的文件夾。   www.2cto.com   $ ls -altr .git total 40 drwxrwxr-x 4 git git 4096 Aug 13 22:39 refs drwxrwxr-x 4 git git 4096 Aug 13 22:39 objects drwxrwxr-x 2 git git 4096 Aug 13 22:39 info drwxrwxr-x 2 git git 4096 Aug 13 22:39 hooks -rw-rw-r -- 1 git git 23 Aug 13 22:39 HEAD -rw-rw-r -- 1 git git 73 Aug 13 22:39 description -rw-rw-r -- 1 git git 92 Aug 13 22:39 config drwxrwxr-x 2 git git 4096 Aug 13 22:39 branches drwxrwxr-x 36 git git 4096 Aug 13 22:39 .. drwxrwxr-x 7 git git 4096 Aug 13 22:39 .   4、向工程添加和提交文件 這些動作和CVS、SVN等操作類似   $ git add *.java *.c $ git commit -m ‘Initial upload of the project’ create mode 100755 Orangebugs.java create mode 100755 pwm/ui/DataManager.java create mode 100755 pwm/ui/PasswordFrame.java create mode 100755 pwm/tools/StrongEncryption.java create mode 100755 pwm/tools/PasswordStrength.java ..   注意如果之前沒有使用 git config 指定用戶名和電子郵件地址,這裡會報錯 $ git commit -m ‘Initial upload of the project'   *** Please tell me who you are.   www.2cto.com   Run   git config  --global user.email “[email protected]” git config  --global user.name “Your Name”   to set your account’s default identity. Omit  --global to set the identity only in this repository.   fatal: empty ident not allowed   5、更改文件和提交改動 編輯文件、添加或者刪除了一些字段 $ vi Orangebugs.java   查看和GIT倉庫中的文件相比有了那些改動   $ git diff diff  --git a/Orangebugs.java b/Orangebugs.java index 6166ed1..fd82d32 100644 — a/Orangebugs.java +++ b/Orangebugs.java @@ -2,7 +2,7 @@ - public counter=10 + public counter=55   如果要提交,需要先確保將文件添加到了臨時區域(staging area)然後才能提交,提交時會自動打開系統的默認編輯器,用戶添加一些注釋後保存並退出編輯器的時候,這些注釋就同時提交到倉庫中去了   www.2cto.com   $ git add Orangebugs.java $ git commit [master 80f10a9] Added password strength meter functionality 1 files changed, 56 insertions(+), 7 deletions(-) 或者,簡單一點的方法是使用 git commit -a 把上面兩個命令合二為一。 6、查看狀態和查看注釋 如果本地的文件和遠端GIT倉庫上的文件相比沒有任何改動,則   $ git status # On branch master nothing to commit (working directory clean)   如果本地做了改動但是沒有提交,則   $ git status # On branch master # Changes not staged for commit: # (use “git add …” to update what will be committed) # (use “git checkout — …” to discard changes in working directory) # # modified: Orangebugs.java # no changes added to commit (use "git add" and/or "git commit -a")   另外,可以用下面的命令查看文件歷史和以往的注釋   $ git log Orangebugs.java commit c919ced7f42f4bc06d563c1a1eaa107f2b2420d5 Author: GIT Admin  www.2cto.com   Date: Sat Aug 13 22:54:57 2011 -0700   Added password strength meter functionality   commit c141b7bdbff429de35e36bafb2e43edc655e9957 Author: GIT Admin Date: Sat Aug 13 20:08:02 2011 -0700   Initial upload of the project     作者 大爺,賞口飯吃。。
Copyright © Linux教程網 All Rights Reserved