Git笔记

安装和配置

https://git-scm.com/
https://git-for-windows.github.io/

查看版本号

git --version

配置参数

git config --global user.name "your name" 添加用户
git config --global user.email "[email protected]" 添加邮箱
git config --global --list 查看信息
git config --global color.ui "auto|always|false"颜色标记

获取帮助

git help

创建版本库

git init
eg:mkdir work -> cd work -> git init

添加文件到索引

git add filename
git add -i进入交互模式
git add -p进入补丁模式

提交修改

git commit [-a] -m "message" [-m "message"]
-a 提交全部修改
git commit -m 提交指定文件
git commit -C HEAD -a --amend增补提交,-C表示复用上一次留言,-c打开预制编辑器,可在之前留言上编辑

查看日志

git log [-num]
[-num] 限制日志输出个数
eg:git log -2
git log --pretty=oneline 简洁模式

查看状态

git status

创建新分支

git branch [-b] new old
[-b] 创建并检出

显示所有分支

git branch

从标签创建分支

git branch

切换到新分支

git checkout new

分支重命名

git branch -m

添加标签

git tag num branch
eg:git tag 1.0 master 给master分支当前位置打上1.0的标签

显示标签

git tag

删除分支

git branch -d name

比较

git diff 查看工作目录树与暂存区区别
git diff --cached暂存区域版本库区别
git diff HEAD工作目录树与版本库区别

分支合并操作

eg:

 git rebase dev```
将dev分支与master分支合并,dev分支的修改(包括标签)会合并到master分支,而dev分支保持不变
```git merge ```将分支<>合并到当前分支
```git merge --squash ```将分支<>压合合并到当前分支

## 提交合并
```git cherry-pick [-n] ```将<>提交合并到当前分支,[-n]多选

## 添加远程仓库
```git remote add 仓库名 地址```

## 推送到远程仓库
```git push [-u] 仓库名 分支```
-u为第一次分支推送时将远程仓库分支与本地分支关联的参数,之后推送可不加此参数

## 反转提交
```git revert [-n] 
git commit -m ``` [-n]表示暂时不提交,反转多个时候用
或
```git revert  --no-edit```使用默认提交留言

## 复位
```git reset <--hard | --soft>  [^ | ~num]```
--soft 参数复位到某一版本后,该版本之后的提交会在工作目录树中暂存,以便修改后重新提交;--hard参数工作目录树和版本库会直接被复位
^ 参数表示指定版本之前的版本,~num 表示指定版本之前的num个版本

## 创建归档
```git archive --format= --prefix=/  [ | gzip|bzip2]> ```
压缩为tar包时才加入[gzip | bzip2]参数

## 忽略文件
git忽略文件有两种方式:```.gitignore```版本级别忽略,该设置能与其他文件一起传播;
```.git/info/exclude```本地级别忽略,该设置不会被传播

你可能感兴趣的:(Git笔记)