git常规命令大全

git remote show origin 显示远端信息
git push --mirror +迁移的服务器路径(ssh)
git remote add origin +ssh 地址
git push -u origin 分支名
git push origin :分支名 删除远程分支
git push origin --delete 删除远程分支
1)配置使用git仓库的人员姓名?
git config --global user.name “Your Name Comes Here”
2)配置使用git仓库的人员email?
git config --global user.email “you@yourdomain.example.com”

前者是git 工具

git remote set-url origin +ssh地址 git迁移

ssh-keygen -C ‘986323930@qq.com’ -t rsa //生成此邮箱公钥

git rm +文件名(失败,可以执行git add+文件名操作)
git commit -m “删除文件件/文件名”
在push到服务器上去

git revert 是生成一个新的提交来撤销某次提交,此次提交之前的commit都会被保留
git reset 是回到某次提交,提交及之前的
git add 增加所有
git rm -f 文件名/
//不保留本地,删除文件
git rm -r --cached +文件名 删除文件(并保留本地)

git clone xxx.git “指定目录”

git commit --amend 追加提交

git reset --hard 工作区改变 暂存区改变,版本库改变(–hard还原了暂存区和工作区的文件到某个具体的commit,(即已提交的,暂存区和工作区文件全部还原到指定的commit) 并移动HEAD指针到指定commit
)
git reset --mixed 工作区不变,暂存区改变 版本库改变(–mixed是默认操作,会把已经提交的和暂存区的文件退回到工作区,并移动HEAD指针到指定commit)
git reset --soft 工作不变 暂存区不变, 版本改变( --soft会把已经提交的文件退回到暂存区,暂存区和工作区原有的文件不变,并移动指针到指定commit,并不还原任何文件
)
在本地新建同名的(“dev”)分支,并切换到该分支)
–keep会把已经提交的文件重置到commit ID的状态,暂存区的退回到工作区,并移动指针到指定commit

git checkout -t origin/dev 该命令等同于:
git checkout -b dev origin/dev

git clean -f //强制删除当前目录下不干净的东西
git branch -r 查看远程分支
git branch (-m | -M) [] 重命名分支
git branch -d -r origin/远程分支名
git checkout +文件名 撤销当前改动

git commit -m “信息"文件名 //对单个文件的提交
git commit -am"信息” 对所有文件的提交

git branch --merged # 显示所有已合并到当前分支的分支
git branch --no-merged # 显示所有未合并到当前分支的分支
git log --decorate --graph --oneline --all 查看所有分支历史

git push origin --tags //把本地tag推送到远端
git log --oneline --decorate --graph --all
git tag “v0” a1aba30
  – 第三个参数是tag名称,第四个参数是commit的hash值,可用第一个命令查看
git config --global alias.lol “log --oneline --decorate --graph --all”
  --起别名 此时命令为git lol
git stash save -a “暂存区别名”
  --git add之后但没有commit,想切换分支就必须将工作区中的内容备份stash save保存进git栈内
git stash list
  --查看当前分支下,git栈的所有备份,可以利用这个列表决定从哪个地方进行恢复
git stash pop --index stash@{0}
  --从git栈中读取最近的一次内容,恢复工作区的内容
git stash drop stash@{0}
  --清理git栈内的指定备份,如果最后一个参数为空,则默认清理最后一个备份
git stash clear
  --清理git栈内所有的备份
git abort --abort
  --放弃此次merge操作

git clean - n //查看将要删除那些文件
git clean -f //删除所有不是被忽略的文件
git clean -f 文件名 //删除此文件

git tag -a tag号 -m “信息” 提交id

git cherry-pick 提交id//挑选某一次提交

git log --color --pretty=format:‘%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ --abbrev-commit
git log --oneline --decorate --graph --all
git log --color --graph --pretty=format:‘%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ --abbrev-commit -1 HEAD

git revert 增加reflog信息
gir reset 会增加reflog信息,会撤销提交信息
git reset --mixed 从版本库中撤回,而且暂存区也撤销,导致未跟踪
git revert 44ec5b6 -m 1 1代表的是分支 撤销合并点的时候

reset和revert区别:
reset是回朔到指定的commit版本(指定commit版本之后的操作都消失了)。(不会改变想对应的远程分支,push上时,需要强制推送)
revert是删除指定的commit操作的内容(指定的版本内容消失,之前和之后commit版本内的操作都保留),
但是这个操作也会做了一个新的commit提交版本。(会改变想对应的远程分支,push上时,不要强制推送)
(revert如果需要反转多个,必须从最后的开始反转, 加 -n可以不马上提交,之后一起提交。git revert -n HEAD)

git push -f origin 分支名

git merge 被合并分组名 --no-ff -m “信息”

git branch -vv 本地分支加远程分支

git ls-files -s //查看暂存区内容
git ls-tree -s //查看树内容
/配置git界面显示******
git config color.ui true 比较高亮
git config --global color.ui true
git config --global color.diff.old red blod

git config --global color.diff.new green blod

git config --global color.diff.meta yellow blod

git config --global color.diff.frag magenta blod

git config color.status.added yellow

git config color.status.changed green

git config color.status.untracked cyan

git config --global color.status auto
git config --global color.diff auto
git config --global color.branch auto
git config --global color.interactive auto
git config --global i18n.commitEncoding UTF-8 //提交显示乱码
git config --global i18n.logOutputEncoding UTF-8 //显示日志乱码
git config --global alias.lg “log --color --graph --pretty=format:‘%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ --abbrev-commit”

配置BeComp
git config --global merge.tool bc
git config --global mergetool.bc.path “D:\Beyond Compare 3”

/配置git界面显示******

git diff 两个版本的哈希值 --name-only显示比对文件

git diff 显示工作区和暂存区的差异

git diff HEAD,显示工作区和HEAD之间的差异

git diff --cached,显示暂存区和HEAD之间的差异

git archive -o 包名.zip HEAD
git diff --name-only 只显示 工作与暂存区 别修改 的文件名(未加入暂存区中)
git diff --name–status 只显示 工作与暂存区 别修改 的文件名 和状态(未加入暂存区中)

git config user.email 查看设置的邮箱
git config user.name 查看设置的用户名
git diff //当前工作区与暂存区比较
git diff HEAD //当前工作区也版本库比较
git diff --cached //暂存区与版本库比较
git clone -b “分支名” url 项目取名
git status --ignored //查看所有被忽略文件的状态

二 查看与对比历史记录
主要学习以下几条命令命令 1.git log 2.git show 3.git diff
git log
  --显示完整commit信息,若一页显示不全,按空格或f向下翻页,按b向上翻页,按q退出
git log -p
  --显示每一次commit之间差异信息
git log --stat
  --显示每一次commit之间差异的统计信息
git log --oneline --decorate --graph --all
  --显示完整的历史示意图,–oneline显示单行信息,–decorate显示引用信息,–graph显示图形化历史信息 --all显示所有分支信息
git show <commit的对应hash值>
  --查看当前分支下的提交
git show master^
  --master当前指向的提交记录的第一父提交
git show master^2
  --master当前指向的提交记录的第二父提交
git show --stat master^2
  --显示提交所做出的改变信息
git diff
  --显示工作区和暂存区之间的差异
git diff --cached
  --显示暂存区和历史提交之间的差异
git diff HEAD~2 – master.txt
  --显示当前工作区与指定历史提交之间的差异,后面可以指定某个特定文件名
git diff --cached HEAD~2 – master.txt
  --显示暂存区与指定历史提交之间的差异,后面可以指定某个特定文件名
git diff HEAD HEAD~2 – master.txt
  --显示两次历史提交之间的差异,后面可以指定某个特定文件名
git diff --color-words / git diff --word-diff
  --显示工作区与暂存区之间文件中,具体单词之间差异
git status --untracked-files=no 查看非跟踪文件的状态

三 撤销修改
主要学习以下几条命令: 1.git checkout 2.git reset 3.git clean 4.git revert
git checkout – master.txt
  --撤销工作区中master.txt的修改,其实是将暂存区中的文件覆盖了工作中的文件
git reset master.txt
  --撤销git add后的文件回工作区
git checkout <某次历史提交> – <指定文件名>
  --回退当前工作区中的某个文件的历史版本
git reset <某次历史提交> – <指定文件名>
  --回退暂存区中的某个文件的历史版本
vim .gitingore
git add .gitingore
git commit -m “add ingore”
  --可以在.gitingore中增加一些需要忽略的文件,此时git add .的时候就不会对.gitingore中忽略的文件进行add
git clean -n/-f/-df
  --git clean主要是删除一些没有git add的文件,-n是显示将要删除的文件和目录, -f删除文件,-df删除文件和目录
git clean -n -X/git clean -X -f
  --显示并删除将要删除的.gitingore中忽略的文件
git revert <某次历史提交>
  --创建一个commit来覆盖当前的commit,HEAD指针是向后移动的,而

三 重写历史记录
主要学习以下几种命令: 1.git commit --amend 2.git rebase 3.git reset 4.git reflog
git commit --amend
  --修改已经提交的commit -m后所带的信息
git checkout -b test_rebase HEAD~
  --基于当前分支的上一个提交创建分支test_rebase
git rebase master
  --合并master分支,但也git merge的区别就是,合并操作后,当前分支的历史看上去是线性的,而git merge后,当前分支有两条路径。处理流程如下:
    --git rebase master
    --处理冲突
    --git add <冲突文件>
    --git rebase --continue
git rebase --abort
  --取消此次rebase的操作
git reflog -10
  --维护HEAD引用的变化历史,显示近10条的记录
git reset --hard/–mixed/–soft HEAD@{5}
  --hard还原了暂存区和工作区的文件到某个具体的commit, 并移动HEAD指针到指定commit
  --mixed是默认操作,只还原了暂存区,并移动HEAD指针到指定commit
  --soft只是移动HEAD指针到指定commit,并不还原任何文件

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尹平华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值