GIT安装

GIT最初是由Linus Benedict Torvalds为了更有效地管理Linux内核开发而创立的分布式版本控制软件,与常用的版本控制工具如CVS、Subversion不同,它不必服务器端软件支持,速度和效率也有着相当程度的提高。

如果拥有CVS或者SVN的使用背景,那么更熟悉的方法是客户端-服务器端模式,所有的文件仓库(repository)都是存放在服务器上的,用户需要在本地安装客户端去服务器上的项目中获取旧版本,提交新版本。

GIT抛弃了这种模式,当用户从远端GIT仓库下载一个工程(project)时,这个工程的所有文件,包括版本历史,文件改动都会下载下来,这时候本地GIT就演变成了一个服务器,所有的提交(check-in)、提出(check-out)都会在这个本地服务器上执行,当你确定一项修改之后,可以再和远端仓库进行合并和同步(merge)。所以,GIT的安装和配置步骤无论在本机还是服务器上都是完全一样的。

1、下载和安装GIT
从这里 http://git-scm.com/download 下载GIT(貌似被墙了)
解压
tar -zxvf git-1.7.11.rc1.tar.gz
cd git-1.7.11.rc1


2.安装,并指定按照目录
./configure --prefix=/usr/local/git
make
make install

添加环境变量
export PATH=$PATH:/usr/local/git/bin

3.初始化配置
安装之后可以验证一下是否安装好
$ whereis git
git: /usr/local/git
$ git –version
git version 1.7.11.rc1
$ git –help


首先需要指定用户名和电子邮件地址
git config --global user.name "GIT Admin"
git config --global user.email [email protected]

验证
$git config --list
user.name=GIT Admin
[email protected]

该配置文件存放在个人主目录下, 文件.gitconfig
$ cat ~/.gitconfig
[user]
name = GIT Admin
email = [email protected]


4.建立工程
本地存储的任何一个目录都可以建立GIT工程,如果已有工程位于 /data/projects/myproject目录,就可以把这目录定义为GIT工程
$ cd /data/projects/myproject
$ git init
初始化空的 Git 版本库于 /data/projects/myproject/.git/

这样就建立了一个名为 .git 的文件夹,这就是GIT用来存储信息和跟踪改动的文件夹

5、向工程添加和提交文件
这些动作和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.

    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


6、更改文件和提交改动
编辑文件、添加或者删除了一些字段
$ 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)然后才能提交,提交时会自动打开系统的默认编辑器,用户添加一些注释后保存并退出编辑器的时候,这些注释就同时提交到仓库中去了
$ git add Orangebugs.java
$ git commit
[master 80f10a9] Added password strength meter functionality
1 files changed, 56 insertions(+), 7 deletions(-)


或者,简单一点的方法是使用 git commit -a 把上面两个命令合二为一

7.查看状态和查看注释
如果本地的文件和远端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”)


8.查看文件历史和以往的注释
   
$ git log Orangebugs.java
    commit c919ced7f42f4bc06d563c1a1eaa107f2b2420d5
    Author: GIT Admin
    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



http://www.thegeekstuff.com/2011/08/git-install-configure/

你可能感兴趣的:(git)