avatar

目录
Git命令

git初始化设置

设置用户名和密码

git config --global user.name "haojy_dev"
git config --global user.email "haojy11@163.com"
---
git config --local  xxxxxxx
---
git config --system xxxxxxx

作用域优先级:  git config --local> git config --global > git config --system
1. 仓库级别 local
2. 用户级别 global
3. 系统级别 system

git查看所有的配置信息 git config -l

查看仓库配置git config --local -l

查看用户配置 git config --global -l

查看系统配置 git config --system -l

增加配置项 git config [--local|--global|--system] --add section.key value(默认是添加在local配置中)

获取一个配置项 git config [--local|--global|--system] --get section.key(默认是获取local配置中内容)

删除一个配置项 git config [--local|--global|--system] --unset section.key

生成公钥和私钥 ssh-keygen -t rsa -C"youremail@example.com"

初始化仓库 git init

git基本操作

将文件添加到仓库 git add filename

一次添加多个文件 git add .

将文件提交到仓库 git commit -m "message"

将文件从仓库删除 git rm filemame

查看当前状态 git status

文件重命名 git mv readme readme.md

对最近一次提交的说明 进行更改 git commit --amend

查看文件内容 cat index.html

设置git提交忽略的文件 vi .gitignore

vi 修改文件编码格式:

:set encoding=utf-8 fileencodings=utf-8
:wq!

git回退操作

删除所有untracked的文件 git clean -df

将本地修改撤销掉 git checkout -- filename

清空暂存区所有文件 git reset .

删除暂存区的某个文件 git rm --cached filename

将暂存区修改撤销掉 git reset HEAD filename

将本地文件回退到指定版本 git reset --hard version_number

将本地文件回退到上一版本 git reset --hard HEAD^

工作区与暂存区恢复一致 git reset --hard HEAD

删除版本库中的内容 git rm -r -f --cached out+commit

git远程强制覆盖本地

$ git fetch --all
$ git reset --hard origin/master 
$ git pull

DIFF操作

查看工作区和暂存区差别 git diff

查看暂存区和仓库差别 git diff --cached

查看工作区和仓库差别 git diff HEAD

查看本地分支和远程分支区别 git diff master origin/master

直接将两个分支上最新的提交做diff git diff topic master

查看当前目录和另外一个分支的差别 git diff test

比较两个历史版本之间的差异 git diff SHA1 SHA2

比较两个版本间有哪些文件变更 git diff edf19e c458bd7 --stat

git查看不同版本某一文件差异 git diff HEAD edf19e c458bd7 --stat ---index.html

git查看不同分支文件差异 git diff master --stat --index.html

git分支操作

创建分支 git branch

创建并切换到分支 git checkout -b

切换分支 git checkout

删除分支 git branch -d git branch -D

删除远程分支 git push origin --delete

与当前分支合并 git merge

查看分支 git branch -a git branch -av

查看所有本地分支和远程分支之间关联 git branch -vv

git远程库操作

从远程库克隆 git clone git@link/file.git

查看远程仓库信息 git remote -v

将远程仓库和本地仓库关联 git remote add origin git@link/file.git(origin并非固定值)

解除与远程仓库的关联 git remote rm origin

设置本地分支和远程分支的关联 git branch --set-upstream-to origin/dev dev

从远程仓库拉取并合并 git pull origin dev

服务端和本地同步 git pull origin master --allow-unrelated-histories

从远程仓库获取并合并 git fecth origin dev + git merge origin/branch

将本地仓库内容推送到关联的远程: git push origin master(master为当前分支)

git stash操作

存储 git stash

查看stash区域 git stash list

恢复stash中内容 git stash apply stash@{stash_number}

删除stash中内容 git stash drop stash@{stash_number}

git tag操作

查看tag git tag

查看tag详细信息 git show v1.0

创建tag git tag -a v1.0 -m 'this is test version 1.0'

删除本地tag git tag -d v0.8

删除远程tag git push origin master :refs/tags/v0.8

tag推送到远程 git push origin v1.0

git图形界面

查看 gitk

git Log

查看历史记录 git log -- pretty=oneline

查看git版本演进历史 git log --graph

短链接方式显示提交记录 git log --oneline

显示最近的4条提交记录 git log --n4

显示全部日志,包括不同分支的日志记录 git log --all

xxx为log日志短链接的名称,-p 表示查看文件内容,-t 表示查看文件类型 git cat-file -p

查看命令记录 git reflog

git协议

本地协议[哑协议] /path/to/repo.git

本地协议[智能协议] file:///path/to/repo.git

http/https协议[智能协议] https://github.com/HJY-dev/HJY-dev.github.io.git

ssh协议[智能协议] git@github.com:HJY-dev/HJY-dev.github.io.git

《learngitbranching》
《git-scm》

文章对 Nauyus 公众号文章【一分钟了解git最实用操作】 进行补充修改。
可扫码关注公众号,支持原创。
Nauyus

打赏
  • 微信
    微信
  • 支付寶
    支付寶

评论