GIT 常用命令
标识
master: 默认主分支
Head : 默认开发分支
origin: 默认远程版本库
Head^ : Head的父提交
git 配置
git config
git config --global user.name "xxx" #配置用户名
git config --global user.email "xxx@xxx.com" #配置邮件
git config --global color.ui true # git status 等命令自动着色
git config --global color.status auto
git config --global color.diff auto
创建版本库
git init #初始化本地版本库
git clone
#克隆远程版本库
修改和提交
git status #查看状态
git diff #查看变更内容
git add . #增加当前子目录下所有更改过的文件至index
git add
#跟踪指定的文件 git mv
#文件改名 git rm
#删除index中的文件 git rm -r * #递归删除
git rm --cached
#停止跟踪文件但不删除 git commit -m "message" #提交所有更新过的文件
git commit --amend #修改最后一次提交
git stash # 暂存当前修改,将所有至为HEAD状态
git stash list # 查看所有暂存
git stash show -p stash@{0} # 参考第一次暂存
git stash apply stash@{0} # 应用第一次暂存
git grep "delete from" # 文件中搜索文本“delete from”
查看提交历史
git log #查看提交历史
git log -5 #显示5行日志
git log --stat #显示提交日志及相关变动文件
git log -p -m
git log -p
#查看指定文件的提交历史 git blame
#以列表方式查看指定文件的提交历史 git show HEAD #显示HEAD提交日志
git show HEAD^ #显示上一个版本的提交日志 ^^ 为上两个 ^5 上5个版本
git show
# 显示某个commit提交的详细内容 可只用commitid 的前几位 四五位
撤销
git reset --hard HEAD #撤销工作目录中所有未提交文件的修改内容
git reset --hard HEAD # 将当前版本重置为HEAD(通常用于merge失败回退)
git checkout HEAD
#撤销指定的未提交文件的修改内容 git revert
#撤销指定的提交
分支与标签
git branch #显示本地所有分支
git branch -a # 显示所有分支
git branch --merged # 显示所有已合并到当前分支的分支
git branch --no-merged # 显示所有未合并到当前分支的分支
git branch -m master master_copy # 本地分支改名
git checkout <branch/tag> #切换到指定分支或标签
git branch
#创建新分支 git branch -d
#删除本地分支 git push remote_name -d remote_barnach_name # 删除远程分支
git tag #列出所有本地标签
git tag
#列出最新提交创建标签 git tag -d
#删除标签 git tag -a v2.0 -m 'xxxx' # 增加v2.0的tag
git show v2.0 #显示v2.0 的日志及详细内容
git log v2.0 #显示v2.0 的日志
git diff # 显示所有未添加至index的变更
git diff --cached # 显示所有已添加index但还未commit的变更
git diff HEAD^ # 比较与上一个版本的差异
git diff HEAD -- ./lib # 比较与HEAD版本lib目录的差异
git diff origin/master..master # 比较远程分支master上有本地分支master上没有的
git diff origin/master..master --stat # 只显示差异的文件,不显示具体内容
git fetch --all
git pull -all
合并
git merge
#合并指定分支到当前分支 git rebase
#衍合指定分支到当前分支
远程操作
git remote -v #查看远程版本库信息
git remote show
#查看指定远程版本库信息 git remote add
#添加远程版本库 git fetch
#从远程库获取代码 git pull
#下载代码及快速合并 git push
#上传代码及快速合并 git push --tags #上传所有标签
SSH key 配置
常见的 SSH 登录密钥使用 RSA 算法,OpenSSH 版本大于 6.5
可以利用 Ed25519 算法生成的密钥对,减少你的登录时间
Ed25519 的安全性在 RSA 2048 与 RSA 4096 之间,且性能在数十倍以上
// 检查ssh目录
ls -al ~/.ssh
// 生成ED25519密钥
ssh-keygen -t ed25519 -C 'xxx@xxxxx.cn'
复制~/.ssh/id_ed25519.pub内容;
目录在 ~/.ssh 下
项目git里面的config的remote的url
ssh://git@gitlab.companylink.cn:20022/xxxxx/xxxx.git

浙公网安备 33010602011771号