Git 常用命令集

img.png

Git 常用命令集

git init

git init                                                初始化Git仓库
git init newrepo                                        指定目录作为Git仓库

git clone <repo>

git clone ssh://git@test.szwn.io:8080/test-szwn.git 从Git仓库中拷贝项目

git remote

git remote -v                                           查看信息
git remote add [shortname] [url]                        添加远程版本库
git remote rm [shortname]                               删除远程版本库
git remote rename [old_name] [new_name]                 修改远程版本库名

git config

配置文件的权重是仓库>全局>系统

git config --list --local                               显示仓库级别git配置信息
git config --list --global                              显示用户级别git配置信息
git config --list --system                              显示系统级别git配置信息
git config -e --local                                   编辑当前仓库下的.git/config
git config -e --global                                  编辑用户级别下的~/.gitconfig
git config -e --system                                  编辑系统级别git安装目录下的 /etc/gitconfig
git config --global user.name "zhangsan"                设置用户名称
git config --global user.email "zhangsan@szwn.com"  设置用户邮箱
git config --global --add user.phone 12345              添加配置
git config --global --get user.phone                    获取配置
git config --global --unset user.phone                  删除配置

git branch

git branch                                              列出本地已经存在的分支,当前分支*标记
git branch -r                                           查看远程分支
git branch -a                                           查看所有分支,包括本地和远程
git branch zs-szwn-testGit                             创建名为zs-szwn-testGit分支
git branch -d zs-szwn-testGit                          删除分支(分支中有未merge的提交,会删除失败)
git branch -D zs-szwn-testGit                          强制删除分支
git branch -m oldName newName                           给分支重命名

git status

git status                                              查看上次提交后是否文件再次修改
git status -s                                           简短输出结果

git checkout

git checkout filename                                   放弃单个文件的修改
git checkout .                                          放弃当前目录下的修改

git checkout zs-szwn-testGit                           切换分支
git checkout -b zs-szwn-testGit                        切换分支(没有则创建)
git checkout -b newbranchname origin/oldbranchname      根据已有分支创建新分支
git checkout --help                                     查看命令
git checkout -f zs-szwn-testGit                        强制切换(有冲突时会丢弃,慎用)

git diff

git diff                                                显示工作区与暂存区文件的差异
git diff [file]                                         显示工作区与暂存区某文件的差异
git diff --cached [file]                                显示暂存区与最新本地版本库的差异
git diff --staged [file]                                显示暂存区与最新本地版本库的差异
git diff [commit-id1] [commit-id2]                      显示暂存区与上一次提交某文件的差异

git add

git add .                                                添加所有文件到暂存区
git add [file1] [file2] ...                              添加多个文件到暂存区
git add src/*                                            Ant通用匹配符添加

git commit

git commit -m ‘message’                                  提交文件
git commit -a                                            修改文件后不需要执行 git add 命令,直接来提交

git push

git push <远程主机名> <本地分支名>:<远程分支名>             上传远程合并
git push <远程主机名> <本地分支名>                         本地远程分支名相同
git push origin zs-szwn-testGit                         上传zs-szwn-testGit分支到origin主机
git push --force origin zs-szwn-testGit                 强制推送分支

git fetch

git fetch <远程主机名>                                    将某个远程主机更新取回本地
git fetch <远程主机名> <分支名>                            取回特定分支的更新
git fetch orign master                                   取回orign的master分支

git merge

git merge                                               合并远程对应的分支到本地当前分支
git merge <远程主机名>/<分支名>                            合并远程特定分支到本地当前分支
git merge <远程主机名>/<分支名> --no-commit                不提交当前合并结果

git rebase

git rebase -i HEAD~2                                    将本地最近两次提交合并为一个
git rebase <分支名>                                      将基准分支更新到当前分支
git rebase <远程主机名>/<分支名>                           将远程基准分支更新到当前分支

git pull

git pull <远程主机名> <远程分支名>:<本地分支名>            将某个远程分支拉取并合并到本地分支
git pull origin master:master                           将远程master分支拉取并合并到本地master
git pull origin master                                  将远程master分支拉取并合并到当前分支

git reset

git reset HEAD [file1] [file2] ...                       撤销已经add或者修改到暂存区的文件
git reset src/*                                          Ant通用匹配符撤销
git reset HEAD                                           回退暂存区文件与上一次提交一致

git reset [--soft | --mixed | --hard] [HEAD]             回退到某次提交的版本
git reset HEAD^                                          回退到上一个版本
git reset HEAD^^                                         回退到上上个版本
git reset HEAD^^^                                        回退到上上上个版本
git reset HEAD~1                                         回退到上一个版本
git reset HEAD~2                                         回退到上上个版本
git reset HEAD~3                                         回退到上上上个版本

git log

git log                                                  查看提交历史
git log --oneline                                        简洁模式
git log --oneline --reverse -5                           反转5行
git log --oneline --author=chentang -5                   查找指定用户提交
git log --graph -5                                       开启拓扑图选项
git log -p FETCH_HEAD                                    查看fetch后的更新信息

git stash

git stash save 'message'                                 stash文件
git stash list                                           查看stash list
git stash show                                           查看有哪些改动默认第一个
git stash show stash@{1}                                 查看第一个存储改动
git stash drop stash@{$num}                              丢弃stash@{$num}存储
git stash apply                                          应用当前stash中的内容
git stash pop                                            当前stash中的内容弹出并删除
git stash clear                                          删除所以缓存的stash

git tag

git tag                                                  查看标签
git tag -l                                               查看标签
git tag --list                                           查看标签
git tag -l "v1.4.*"                                      按照特定模式查看标签
git tag -a v1.4.0 -m "version 1.4"                       创建标签
git show v1.4.0                                          看到标签信息和与之对应的提交信息
git push origin v1.4.0                                   push到远端
git tag -d v1.4.0                                        删除tag
git checkout v1.4.0                                      签出标签

git cherry-pick

git cherry-pick <commitHash>     应用某一个提交到工作区
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值