# git命令

# 常用命令

git log # 查看修改记录

git diff # 对比

git status # 查看当前状态

git clone xxxx # 复制代码到本地

git checkout  xxx #  切换到某个分支

git commit -am '提交备注' # 提交到本地分支

git push  # 提交到远程分支

git fetch # 更新远程分支代码到本地

git pull # 更新远程分支代码到本地,并合并

git branch xxx # 创建分支

git branch -d xxx # 删除分支

git merge xxx # 合并分支

git push origin test:test # 将本地新建的分支提交到远程

git stash #  将当前修改存入后台 (可以用于去除当前的修改)

git stash pop # 将存入后台的修改取出

# 标签使用

git tag -a v1.1 -m '第一个版本'  # 创建一个标签
 
git tag # 查看标签

git show v1.1 # 查看标签详情

git checkout v1.1 # 检出某个标签 ,比如用于回滚

git checkout master # 从标签中返回原分支

# gitignore文件

在根目录下创建一个.gitignore文件,用于排除不需要提交到git仓库的文件 如

/Log
/Temp
vendor/*
!vendor/easyswoole/
/.idea
.env

排除Log,Temp,.idea目录,排除.env文件,排除vendor目录但不排除该目录下的easyswoole目录。

# gitignore无效

有时会遇到在gitignore做了修改,但修改无效时,可以尝试使用如下命令清下缓存,重新提交。

git rm -r --cached .
git add .
git commit -m 'fix'

# 远程分支被别人删除了,本地还有显示

要删除本地,可使用如下命令:

git remote prune origin
git fetch --prune

# 恢复被删除的文件

如果清楚知道commit_id ,使用如下命令

git checkout commit_id -- file_name

不加commit_id时,则会将该文件恢复到最新提交的那次