git基本命令总结
前言
简单学习了一下git的命令,虽然现在操作git都是使用Source Tree之类的第三方软件居多,但熟悉git命令也是有必要的,所以在此记录一下
一、git学习和练习方法
1、推荐git练习网址:https://learngitbranching.js.org/?locale=zh_CN
2、推荐git学习网站:https://www.liaoxuefeng.com/wiki/896043488029600
二、git基础操作
1、创建新分支
git branch <new-branch-name>
2、切换新分支
git checkout <new-branch-name>
3、创建并切换新分支
git checkout -b <new-branch-name>
4、提交分支
git commit
5、合并分支到当前分支
git merge
6、将该分支线性放置在当前分支
git rebase
7、想看 HEAD 指向,可以通过 cat .git/HEAD 查看, 如果 HEAD 指向的是一个引用,还可以用 git symbolic-ref HEAD 查看它的指向
8、相对引用
1)使用 ^ 向上移动 1 个提交记录
2)使用 ~
9、让分支指向另一个提交,eg:
git branch -f main HEAD~3
10、 撤销变更
git reset //撤销本地更改 git revert //撤销服务器更改(实际回退重新提交,原纪录不删除)
11、将C2,C4整理到当前分支
git cherry-pick C2 C4
12、 重新整理Head以上四条记录
git rebase -I HEAD~4
13、建立指向C1的V1标签
git tag v1 C1
14、git describe
可以是任何能被 Git 识别成提交记录的引用,如果你没有指定的话,Git 会以你目前所检出的位置(HEAD)。
它输出的结果是:
tag 表示的是离 ref 最近的标签, numCommits 是表示这个 ref 与 tag 相差有多少个提交记录, hash 表示的是你所给定的 ref 所表示的提交记录哈希值的前几位。
当 ref 提交记录上有某个标签时,则只输出标签名称
三、git远程操作
1、克隆代码到本地
git clone
2、抓取最新代码
git fetch
3、git pull 就是 git fetch 和 git merge 的缩写
4、在远程仓库的 main 分支上做一次提交
git fakeTeamwork
5、还可以指定提交的分支或是数量
git fakeTeamwork3
6、上传代码
git push
7、git 将
git push origin:
8、git 会到远程仓库的source位置上,然后获取所有本地不存在的destination提交,放到本地上
git fetch origin:
9、删除远程仓库中的分支
git push origin :
10、如果 fetch 空
git fetch origin :
11、Git pull origin main :通过指定 main 我们更新了 o/main。然后将 o/main merge 到我们的检出位置,无论我们当前检出的位置是哪。
12、Git pull origin main:foo :新建分支foo,通过指定 main 我们更新了 o/main。然后将 o/main merge 到我们的检出位置,无论我们当前检出的位置是哪