Git常用命令
工作流程
配置
git config -l
查看用户配置git config --global user.name <name>
配置全局用户名git config --global user.email <email>
配置全局用户邮箱
如不配置,每次提交需手动输入
基本命令
git status
查看当前版本库修改状态git log
查看提交记录git add <file>
将文件添加到暂存区git commit -m "mesage"
将暂存区文件提交到本地版本库git pull
将origin文件拉取到本地工作区并合并git push
将本地版本库推送到origingit merge branch
合并branch到当前分支git cherry-pick hash
合并其他分支单笔提交到当前分支 hash为提交版本SHA-1 Hash值(例:cc127537978af35e2f502da7e8d22e340ed0e5)
缓存
git stash
将暂存区的内容缓存,并移除暂存区内容git stash save "message"
作用与上面相同 添加缓存备注git stash pop
将缓存恢复到暂存区 默认回复最后一条 也可以恢复指定缓存
忽略文件
-
通过修改
.gitignore
文件配置需忽略文件
log/*
忽略log文件夹下所有文件
!log/README.txt
不忽略log文件夹下README.txt文件
css/*css
通过正则匹配 忽略css文件夹下所有.css文件 -
直接通过命令行强制忽略
git update-index --assume-unchanged file.cc
强制忽略file.cc文件的修改
git update-index --no-assume-unchanged file.cc
取消强制忽略file.cc文件的修改
撤销操作
-
撤销文件修改
git checkout <file>
将文件恢复至本地版本库最新版本
谨慎操作 会清空你所有的修改 -
撤销add操作
git reset HEAD <file>
将已经添加到暂存区的修改恢复到工作区 -
撤销commit操作
git reset HEAD --soft HEAD^1
将已经提交到本地版本库的修改恢复到暂存区 保留已提交修改
git reset HEAD --hard HEAD^1
将已经提交到本地版本库的修改恢复到暂存区 不保留已提交修改
HEAD^*
*可以为任何数 代表回复到距离最新版本前的第几个版本 -
撤销push操作
git push -f origin branch
强制降本地版本库推送到远程版本库
慎重操作!!!
会造成远程版本库更新 如本地版本低于远程版本 会造成远程版本库晚于本地版本提交记录丢失
原位替换
git commit --amend
将本次commit合并到上一个commit中,在弹出编辑器中重新修改 commit message即可
版本回退
git reset --hard hash
将本地版本恢复为指定版本git reset --hard HEAD^
将本地版本恢复至最新版本
标签
git tag -l
查看所有标签git tag -a V1.0 -m "message"
为当前版本添加标签V1.0
备注为message
git tag -a V1.0 hash
为制定版本打标签git tag -d V1.0
删除本地标签V1.0
git push origin --delete V1.0
删除origin标签
分支
git branch <branch-name>
创建新分支git checkout -b <branch-name>
创建新分支并切换到新分支git branch --set-upstream-to=origin/V1.0
设置分支关联远端仓库git branch -d <branch-name>
删除分支git push roigin --delete <branch-name>
删除远端分支