因为自己老是忘记Git的命令,写一篇博客记录一下吧…
Git 配置用户信息
git config --global user.name "天真"
// 配置全局用户名
git config --global user.email PBK-B@PBK6.cn
// 配置全局邮箱
git config user.name "天真"
// 配置当前项目用户名
git config user.email PBK-B@PBK6.cn
// 配置当前项目邮箱
git config --global core.fileMode false
// 全局配置忽略监听文件权限
git config core.fileMode false
// 配置当前项目忽略监听文件权限
Git 基本操作
git push
// 拉取代码
git add .
// 添加全部已修改文件到缓存区
git commit -m "这是这次修改的关键信息"
// 添加 Commit 信息
git push
// 提交代码
git checkout .
// 回滚上次版本,撤销没 add 的全部文件
git remote set-url origin [url]
// 切换远程仓库链接
git reset --soft HEAD^
// 撤销本地commit
git submodule update --remote
// 更新全部子模块
git submodule update --init
// 如果你已经克隆了项目但忘记了 --recurse-submodules,那么可以运行 git submodule update --init 将 git submodule init 和 git submodule update 合并成一步。如果还要初始化、抓取并检出任何嵌套的子模块, 请使用简明的 git submodule update --init --recursive。
Git 初始操作
git clone git@PBK6.cn
// 拉取远程项目
git init
// 使用当前目录作为Git仓库
git log
// 列出历史提交记录
git branch (branch name)
// 创建分支命令
git checkout (branch name)
// 切换分支命令
git merge
// 合并分支命令
git branch
// 列出分支基本命令
git branch -d (branch name)
// 删除分支命令
git config --list
// 查看 Git 当前配置
git config credential.helper store
// 保存 https 协议链接时的密码输入
ssh -T git@github.com
// 测试 GitHub ssh 协议
Git 操作进阶
git tag -m "fix bugs" v1.0.1
git tag -a v1.0.1
// git tag 发布版本带说明信息
git describe --abbrev=0 --tags --match 'v[0-9]*'
// git tag 查看当前版本 tag
git show v1.0.1
// 查看版本信息
git push origin :refs/tags/v1.0.1
// 删除远程 tag
// rebase 需要修改的 commit
git rebase -i HEAD~2
// or
git rebase -i {commitID}
// 执行 rebase 命令后,会出现 reabse 的编辑窗口,窗口底下会有提示如何操作,在这里把需要修改的 commit 最前面的 pick 改为 edit,可以一条或者多条。
git commit --amend --author="{username} <{email}>" --no-edit
// 只修改作者、邮箱
git rebase --continue
// 继续下一个修改
// 清理本地分支
git gc --prune=now
git remote prune origin
// 操作记录
git reflog