CENTOS6通过yum源安装git1.8

增加源

1
wget -O /etc/yum.repos.d/git.repo https://gitlab.com/gitlab-org/gitlab-recipes/raw/master/install/centos/PUIAS_6_computational.repo

增加key

1
wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-puias http://springdale.math.ias.edu/data/puias/6/x86_64/os/RPM-GPG-KEY-puias && rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-puias

安装

yum install -y git

命令整理

  • git config
    1. --global user.name “kingwen0302”
    2. --global user.email “kingwen0302@msn.com”
    3. --global color.ui “auto”

添加一个文件到暂存区
一个文件在git add后, 再次编辑后, git commit只提交git add之前的编辑

  1. -i 交互模式
  2. -p patch模式
  • git branch
    1. 无参数 列出所有分支
    2. branch_name 创建分支,已当前的所在分支为父
    3. new_branch_name father_branch_name 创建分支
    4. -d branch_name 删除已经合并的分支,没有合并的不能删除
    5. -D branch_name 强制删除分支
    6. -m old_branch_name new_branch_name 分支改名
  • git checkout

    1. branch_name 切换到分支
    2. -b branch_name exists_branch_name 创建分支branch_name&&切换到分支
  • git status

    1. Changes to be commited(要提交的变更)
    2. Changed but not updated(尚未暂存以备提交的变更)
  • git diff

    1. 无参数 对比未暂存的改动
    2. –cached 对比已暂存的与HEAD的改动
    3. HEAD 比较工作目录树中暂存和未暂存的改动
  • git commit

    1. -a 所有文件提交
    2. -m 注释 可以有多个-m
    3. –amend 增补提交
    4. -C HEAD 复用HEAD的提交留言
  • git mv

  • .gitignore

    1. .gitignore
    2. .git/info/exclude
  • git merge
    直接合并(straight merge)
    压合合并(squashed commits)
    拣选合并(cherry-picking)

    1. be_merge_branch 将be_merge_branch合并到当前分支中
    2. –squash be_merge_branch 将be_merge_branch合并到当前分支的暂存区, 需要手动执行git commit操作
      1.git cherry-pick 321d76f 将提交名称为321d76f的合并到当前分支
  • git reset

    1. –hard HEAD 重置为HEAD版本,删除暂存/未暂存的文件
    2. HEAD 重置为HEAD版本, 暂存/未暂存的文件不删除
    3. HEAD^ 重置为HEAD前一个版本
  • git log
    ^ HEAD~1 是父记录
    ^^ HEAD~2 是爷爷记录
    ^^^ HEAD~3 是爸爸的爷爷记录

    1. -N N为数字 列出最近N条记录
    2. –since=”5 hours” 最近5小时
    3. –before=”5 hours” 5小时之前
    4. 18f822e..HEAD 从(18f822e HEAD]范围内的记录
    5. –pretty=format:”%h %s” 格式化
  • git diff
    diff 默认是与当前目录树进行对比

    1. 18f822e 对比18f822e与当前目录树对比
    2. –stat tag/branch 统计代码改动
  • git blame

    1. file 显示所有的代码记录
    2. -L 12,13 file
    3. -L 12,+2 file
    4. -L 12,-2 file
    5. -L “/<\/body>/“,+2 file
  • git revert

  • git rebase

    1. 重新排序提交