git命令看一这篇就够了

git最最基本命令(怎么克隆、上传)

#(将远程仓库的代码克隆到本地)
git clone + 远程仓库地址

#(将工作区的改动添加到暂存区)
git add .

#(将暂存区的文件提交到本地库)
git commit -m [message]

#(将本地库的代码上传至远程仓库)
git push

git重要命令(几乎天天用)

#(看一眼我修改过哪些文件 -s)
git status

#(看一眼我具体修改过哪些代码)
git diff 比较工作区和暂存区
git diff --cached 比较暂存区和本地库
git diff HEAD 比较工作区和本地库

#(查看当前分支的所有提交记录 --pretty=oneline)
git log

#(查看所有分支的所有操作记录)
git reflog

#(切换分支)
git checkout + 分支名 => 切换到已有分支
git checkout --track origin/branch_name => 切换到一个新分支并跟踪远程同名分支
git checkout -b myBranch origin/branch_name => 切换到一个新分支并跟踪远程分支

#(分支相关命令)
git branch 查看已经检出的分支
git branch -a 查看所有本地库的分支
git branch -v 查看分支及最后一笔提交的commit id
git branch -vv 查看分支、commit id、关联的远程分支
git branch -D 删除分支

#(将远程库的更新拉取到本地库)
git fetch

#(通过merge合并分支)
git merge 默认为fast-forward模式
git merge --no-ff 关闭ff模式,会产生一个新的commit
git merge --squash 压缩合并,会抛弃一些无用的提交

#(将远程库代码拉取到工作区)
git pull
这个命令等于 git fetch + git merge

#(代码出问题了,我要回滚)
git reset + 版本号 => 默认–mixed模式,重置到某个commit id下,仅保留工作区
git reset --soft + 版本号 => 会保留工作区和暂存区内容
git reset --hard + 版本号 => 啥都不保留
看图:
在这里插入图片描述
#(只想重置某一笔提交)
git revert + commitId 撤销文件并提交
git revert -n + commitId 撤销文件,需要手动提交
revert后再次merge代码丢失问题

#(git reset只影响track了的文件,需要删除未track的文件用clean)
git clean -n 显示将要被删除的文件
git clean -dn 显示将要被删除的文件和文件夹
git clean -f 删除未被track的文件
git clean -df 删除未被track的文件和文件夹

#(切换分支时,除了commit提交外,还可以用stash贮藏)
git stash 将不在本地库的修改贮藏起来 (git stash save ‘一些信息’)
git stash list 查看贮藏记录
git stash show -p 显示最近一个贮藏的改动
git stash pop 弹出贮藏栈的顶层记录
git stash apply 恢复贮藏栈的顶层记录,保留在栈中
git stash drop stash@{num} 删除指定num的贮藏
git stash clear 删除所有贮藏

git进阶(玩点花的)

#(修改最近一次的提交的message,会改变最近一次的commit id)
git commit --amend

#(将这次提交与上一次提交合并,会改变最近一次的commit id)
git commit --amend --no-edit

#(不想通过merge合并一整个分支,只需要其中几个commit)
git cherry-pick + hash => 抓取一个commit,生成一个新节点
git cherry-pick hashA…hashB => 抓取A到B中的所有提交,不包含A
git cherry-pick hashA^…hashB => 抓取A到B中的所有提交,包含A

#(下面这个命令很屌,可以认真学习)
git rebase -i

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值