Git使用备忘录

git仓库本质上就是一个拥有历史纪录并可以随时恢复历史状态的文件夹。

git的大部分操作是基于HEAD指针进行的。

分支本质上类似于一个指向提交记录的指针。

本地操作

git init 在当前目录下构建仓库。

git add xxx 将当添加或修改文件时,将变化的文件保存。

git status 查询仓库状态,检查是否需要add。

git diff 查看修改。

git commit 在HEAD下提交修改,为HEAD指针指向的记录增加一个记录节点,并且移动HEAD指针指向该节点。-m参数添加修改信息。

git log 查看提交日志。

git reset xxxx 将HEAD指向的分支上移到xxxx节点,此操作基于HEAD指针指向的分支。此操作无法用于撤销远程操作。

git revert xxx 提交一个撤销操作,将xxx操作撤销,此操作基于HEAD指针指向的分支。

git branch xxx 在当前HEAD指针下创建名为xxx的分支,HEAD指针不会指向新创建的分支。

git branch -f xxx kkk 将xxx分支指针指向kkk更改记录,此操作不会移动HEAD指针,此操作本身也不依靠HEAD指针。

git checkout xxx 将HEAD指针指向xxx记录。

git checkout -b xxx 新建xxx分支,并且将HEAD指针指向xxx分支。

git tag vvv xxx 在xxx节点上,设置vvv标志作为里程碑,一般设置为发行版本release。

git merge xxx 在HEAD下操作,合并xxx分支与当前HEAD指向的节点的修改,即创建一个新的修改节点,继承两分支。

git rebase xxx 将HEAD下节点取出,放在xxx节点下,并且将HEAD下分支移到此位置。如果xxx下已经包含HEAD取出的节点,那么HEAD下支点将会移到xxx节点。
git rebase -i xxx 将HEAD下节点根据需要取出,放在xxx节点下,并将HEAD下分支移到此位置。

git cherry-pick xxx kkk 将指定节点xxx,kkk直接拉到HEAD指向的分支。

远程操作

本地仓库会为获取的远程仓库中的每一个分支xxx构建一个远程分支o/xxx。本地操作无法修改远程分支o/xxx,只有当远程仓库内的分支发生改变时,远程分支才会变化。

git clone 获取远程仓库内容。

git fetch 获取远程仓库的更改,并修改远程仓库指针,默认下载所有变更。

git fetch rrr xxx 获取远程仓库rrr的xxx分支上的所有修改记录。

git fetch rrr xxx:kkk 获取远程仓库rrr的xxx分支上的所有修改记录,并且同步本地分支kkk。

git fetch rrr :xxx 在本地仓库上创建xxx分支。

git pull 获取远程仓库更新情况,更新远程分支,然后对该远程分支执行merge。该指令基于HEAD指针执行,并且当前分支需要设置跟踪远程分支属性。

git pull --rebase 获取远程仓库的更新情况,更新远程分支,如果当前有根据远程仓库历史版本进行的更新操作,再将这些更新操作追加更新当前分支。该指令基于HEAD指针执行,并且当前分支需要设置跟踪远程分支属性。

git pull rrr xxx 获取远程仓库rrr的xxx分支,然后将其merge到当前HEAD指向节点。

git pull rrr xxx:kkk 获取远程仓库rrr的xxx分支,然后再本地仓库创建kkk分支并与xxx分支同步,然后将xxx分支与HEAD指向节点进行merge操作。

git push 同步本地仓库与远程仓库。此操作基于HEAD指针,如果HEAD指针指向的分支跟踪远程分支,本地远程两分支会执行同步操作,如果远程仓库不存在被HEAD指向的分支跟踪的分支,远程仓库会创建一个分支并执行同步操作。基于旧记录的push会被禁止执行。

git push rrr xxx 同步本地仓库与远程仓库rrr的xxx分支。此操作无关HEAD指针,并且本地远程两仓库的xxx分支需要跟踪并同名。

git push rrr xxx:kkk 同步本地仓库的xxx分支与远程仓库的kkk分支。如果远程仓库不存在kkk分支,远程仓库会自动创建该分支,并且执行此操作。此操作无关HEAD指针。

git push rrr :xxx 在远程仓库上删除xxx分支。

git checkout -b xxx o/xxx为 创建分支xxx,令其跟踪远程分支o/xxx,使用该指令后,HEAD指向xxx分支

git branch -u o/xxx xxx 将分支xxx设置为跟踪远程分支o/xxx,HEAD指针不会移动。

猜你喜欢

转载自blog.csdn.net/qq_32165041/article/details/81265381