工作区-->暂存区(stage)-->当前分支
参考博客:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
待更。。。
一、创建仓库
1.创建版本仓库,创建一个文件夹 然后 git init ,会生成一个隐藏的.git目录,可以通过ls -ah查看
2.把文件添加到版本库。 git add <file> 把文件修改添加到暂存区(stage); 然后 git commit -m "message" 一次性把暂存区的所有修改内容提交到当前分支。
二、版本控制和文件修改
3.查看历史记录 git log
4.撤回版本 git reset --hard HEAD^ 一个^表示向前撤回一个版本,撤回多个版本可以用 HEAD~10。如果撤回到旧版本,又想回到新版本 git reset --hard 1094a(版本号)
5.查看当前状态 git status
6.比较工作区文件和版本库的区别 git diff HEAD -- <file>
7.场景一:改乱了工作区的文件,想丢弃工作区的修改 git checkout -- <file>
8.场景二:不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>,就回到了场景1,第二步按场景1操作。
9.场景三:场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考4撤回版本,不过前提是没有推送到远程库。
10.删除文件 rm <file>然后git status查看状态
情景一:确认从版本库删除 git rm <file> 然后 git commit -m "message"
情景二:如果是误操作 git checkout -- <file> 用版本库的文件版本代替本地,但是此时文件是版本库中的最新的版本,并不一定是工作区最后修改的版本。
三、远程仓库操作
11.把本地库和远程库关联git remote add origin git@server-name:path/repo-name.git
12.关联后,使用命令git push -u origin master第一次推送master分支的所有内容
13.此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改
14.从远程库克隆到本地 git clone
四、分支管理
git的创建新的分支只是在当前master的时间线上新建一个指针,而HEAD就是指向当前分支的指针,所以切换分支也就是切换HEAD指向的指针。
15.查看分支 git branch
16.创建分支 git branch <name>
17.切换分支 git checkout <name>
18.创建加切换分支 git checkout -b <name>
19.合并某分支到当前分支 git merge <name>
20.删除分支 git branch -d <name>
21.解决冲突 1️⃣在master分支 git merge <name> ,2️⃣先确定修改冲突的内容,3️⃣然后再git add <filename> ,git commit -m "message",4️⃣删除被合并的分支 git branch -d <name>