首页 > 代码库 > 分布式版本管理器Git的基础操作指南

分布式版本管理器Git的基础操作指南

对于任何一个文件,在Git内都只有3种状态:已提交(committed),已修改(modified)和已暂存(staged)。已提交表示该文件已经被安全地波啊存在本地数据库中了,已修改表示修改了某个文件,但还没有提交保存,已暂存表示把已修改的文件放在下次提交时要保存的清单中。

一.基本的Git工作流程如下所示:

  1. 在工作目录中修改某些文件

  2. 对这些修改了的文件做快照,并保存到暂存区域

  3. 提交更新,将保存在暂存区域的文件快照转储到git目录中

二.Git安装

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel -y

  1. 从源码安装

    tar zxf git-1.6.0.5.tar.gz

      cd git-1.6.0.5    
      make prefix=/usr/local    
      make install

 2.  rpm包安装

       yum install git-core -y

三.初次运行Git前的配置

    Git的配置文件有:/etc/gitconfig,~/.gitconfig,.git/config(工作目录里),每个级别的配置都会覆盖上层相同配置,所有.git/config里的配置会覆盖/etc/gitconfig中的同名变量

    1.用户信息

    git config --global user.name "John Doe"

    git config --global user.email johnode@example.com

    2.编辑器

    git config --global core.editor vi

    git config --list 检查已有的配置信息

    --global选项,读写的是/etc/gitconfig

    --system选项,读写的是~/.gitconfig

四.Git的基础用法

    取得项目的Git仓库

    1.从当前目录初始化git init

    2.从现有仓库克隆eg:git clone git://github.com/schacon/grit.git

    Git的常用操作工作目录下面的所有文件都不外乎两种状态:已跟踪或未跟踪。已跟踪的文件就是指本来就被纳入版本控制管理的文件,其它文件都属于未跟踪文件

    基本操作

    1.git status 确定哪些文件当前处于什么状态

    2.git add filename 开始跟踪一个新文件或者把已跟踪的文件放到暂存区

    3.git diff 查看尚未暂存的文件更新了哪些部分

       git diff --cached 查看已经暂存起来的文件和上次提交时的快照之间的差异

    4.git commit -m "string" 提交更新只限于暂存区域的文件

       git commit -a -m "string" 把所有已经跟踪过的文件暂存起来一并提交,从而跳过了git add步骤      5.git rm filename 从已跟踪文件清单中移除某个文件

    6.git rm --cached filename 文件从Git仓库删除,但仍保留在当前的工作目录中

    7.git mv file1 file2 移动文件或者重命名文件

    8.git log 查看提交历史

       git log -p -2     -p选项展开显示每次提交的内容差异,-2表示仅显示最近的2次更新
       git log --stat 快速浏览其他协作者提交的更新都做了哪些改动
       git log --pretty=oneline 使用完全不同与默认格式的方式展示提交历史

     gitk 是git的图形化查询提交历史的工具

     9.git commit --amend 撤销操作

     eg:git commit -m "initial commit"
            git add file

            git commit --amend 这三条命令最终得到一个提交,第二个提交命令修正了第一个提交的内容

     10.git reset HEAD filename 取消已暂存的文件,该命令是git status 后出现的提示命令

     11.git checkout -- filename 取消对文件的修改,该命令是git status 后出现的提示命令

五.对远程仓库的使用

     git clone git://github.com/schacon/ticgit.git

     cd ticgit
     1.git remote 列出远程库的简短名字

        git remote -v 显示远程库的简短名字和对应的克隆地址

     2.git remote add pb git://github.com/paulboone/ticgit.git 添加一个新的远程仓库,指定一个简短的名字,一边将来引用git fetch pb 抓取所有paulboone有的,本地仓库没有的信息

     3.git push origin master 把本地的master分支推送到origin服务器上,只有所有克隆的服务器有写权限,并且同一时刻没有其他人在推送数据,这条命令才会如期执行,其他人如果推送了若干更新,那你的操作会被驳回,你必须把他们的更新抓取到本地,并到自己的项目中,才能再次推送

     4.git remote rename pb paul 修改某个远程仓库的简短名称,把pb改成paul

     5.git remote rm paul 移除远端的仓库

本文出自 “尼族部落” 博客,转载请与作者联系!