git 常用命令

git 常用命令

Scroll Down

git 常用命令

git 安装与配置

  1. 在 Linux 中安装 git
yum -y install git
  1. git 配置说明
[root@db01 mysql]# git config
usage: git config [options]

Config file location
    --global              使用全局配置文件
    --system              使用系统级配置文件
    --local               使用版本库级配置文件
    -f, --file <file>     使用给定的配置文件
  1. git 配置全局用户、邮箱,和语法高亮
# 配置全局用户
git config --global user.name "lidexian"
# 配置用户邮箱
git config --global user.email "517334881@qq.com"
# 配置语法高亮
git config --global color.ui true
  1. 查看配置列表
[root@gitlab ~]# git config --list
user.name=lidexian
usr.email=517334881@qq.com
color.ui=true

[root@gitlab ~]# cat .gitconfig 
[user]
	name = lidexian
[usr]
	email = 517334881@qq.com
[color]
	ui = true

git 初始化

  1. 创建目录并初始化目录
mkdir git_data
cd git_data
git ini
  1. 目录初始化成功后,目录下会有一个.git目录
[root@gitlab git_data]# ls -a | xargs -n1
.
..
.git
  1. .git 目录下内容
[root@gitlab .git]# ls | xargs -n1
branches	# 分支目录
config		# 定义项目的特有配置
description	# 描述
HEAD		# 当前分支
hooks		# git 钩子文件
info		# 包含一个全局排除文件(exclude)
objects		# 存放所有数据,包含 info 和 pack 两个子文件夹
refs		# 存放指向数据(分支)的提交对象的指针
index		# 保存暂存区信息

git 本地仓库常用命令

  1. 查看当前工作目录状态
[root@gitlab git_data]# git status
# On branch master
#
# Initial commit
#
nothing to commit (create/copy files and use "git add" to track)
  1. 提交文件到暂存区
# 提交指定文件到暂存区
git add filename
# 提交所有文件到暂存区
git add .
  1. 删除暂存区的文件
# 只删除暂存区文件
git rm --cached filename
# 同时删除暂存区和工作目录的文件
git rm -f filename
  1. 提交文件到本地仓库
git commit -m "add newfile"
  1. 重命名提交到暂存区的文件
# 同时修改工作目录和暂存区文件名字
git mv old_name new_name
  1. 比对工作目录和暂存区文件内容
git diff
  1. 比对暂存区和仓库中的文件内容
git diff --cached
  1. 查看提交版本信息日志
# 多行显示详细信息
git log
# 一行显示简要信息
git log --oneline
# 显示当前所在分支及版本
git log --oneline --decorate
# 显示提交的具体内容
git log -p
# 显示最近提交的 2 条内容
git log -2
# 查看指定提交记录的详细内容
git log 6ef6282 -p
# 查看所有提交过的版本,包括回滚之前的版本
git reflog
  1. 回滚到指定版本
# 这里 744a169 是通过 git log --oneline 查看到的版本号
git reset --hard 744a169 

git 分支

  1. 创建分支
# 只创建分支
git branch branch_name
# 创建分支,并切换到创建的分支
git checkout -b branch_name
  1. 查看分支列表
git branch
  1. 切换分支
git checkout branch_name
  1. 合并分支
# 合并指定分支到当前分支
git merge branch_name
# 合并分支到主分支
git checkout master
git merge brach_name

git 标签

  1. 打标签
# 给当前版本打标签
$ git tag -a v1.0 -m 'v1.0稳定版本'
# 给指定版本打标签
$ git tag -a v0.4 718c699 -m 'v0.4稳定版'
  1. 查看标签列表
# 查看所有已打标签
$ git tag
# 查看指定标签详细信息
$ git show v1.0
  1. 回滚到指定标签
git reset --hard v0.4

git 远程仓库

  1. 添加远程仓库
git remote add 仓库名称 远程仓库地址
git remote add origin https://github.com/MyNameDeXian/test.git

# 如果仓库已存在,需要选删除
git remote remove origin
  1. 推送到远程仓库
git push -u 仓库名  主分支
git push -u origin master
  1. 查看远程仓库名列表
git remote
  1. 设置免密推送,需要在远程仓库添加公钥
[root@gitlab ~]# ssh-keygen
[root@gitlab ~]# cat .ssh/id_rsa.pub
  1. 克隆远程仓库
git clone origin https://github.com/MyNameDeXian/test.git
  1. 推送和拉取远程仓库代码
# 推送到远程仓库dev分支
git push -u 仓库名 分支
git psuh -u origin dev

# 拉取远程分支dev分支代码
git pull -u 仓库名 分支
git pull -u origin dev

# 默认推送到主分支
git pull 
git push