实习先做一点事——菜鸟学习git记录
跟着廖雪峰学习git
1.在我的meituan文件下创建一个新文件test
2.通过git init
命令把这个目录变成Git可以管理的仓库
3.在创建的test中建立一个readme.txt,mac建立文本文件的方法是这样的(刚开始用mac感觉自己像没用过电脑的外星人)
4.把这个文件readme.txt放到Git仓库
第一步,用命令git add
告诉Git,把文件添加到仓库
第二步,用命令git commit
告诉Git,把文件提交到仓库
简单解释一下git commit
命令,-m
后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。
以上总结
初始化一个Git仓库,使用git init
命令。
添加文件到Git仓库,分两步:
-
第一步,使用命令
git add <file>
,注意,可反复多次使用,添加多个文件; -
第二步,使用命令
git commit
,完成。
5.修改readme.txt文件
在这里呢,又学习了vi的一点知识
-
在默认的"指令模式"下按 i 进入编辑模式
-
在非指令模式下按 ESC 返回指令模式
-
在"指令模式"下输入:
:w保存当前文件
:q 退出编辑,如果文件为保存需要用强制模式
:q!强制退出不保存修改
:wq组合指令, 保存并退出
-
在"指令模式"下移动:
h左 j下 k上 l右
git status
命令可以让我们时刻掌握仓库当前的状态
上面告诉我们,readme.txt被修改过了,但还没有准备提交的修改。
使用git diff
这个命令可以看看修改了什么,diff
就是difference.
知道了对readme.txt作了什么修改后,再把它提交到仓库就放心多了,提交修改和提交新文件是一样的两步,第一步是git add; 同样没有任何输出。第二步
git commit
然后又学了一个查看文件内容用cat
学了这几步
-
要随时掌握工作区的状态,使用
git status
命令。 -
如果
git status
告诉你有文件被修改过,用git diff
可以查看修改内容。
6.在Git中,我们用git log
命令查看历史记录
如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline
参数
一大串类似3628164...882e1e0
的是commit id
(版本号)每提交一个新版本,实际上Git就会把它们自动串成一条时间线。
7.版本退回
返回历史上一个版本
$ git reset --hard HEAD^
返回未来某版本
$ git reset --hard a4951ac
-
HEAD
指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id
。 -
穿梭前,用
git log
可以查看提交历史,以便确定要回退到哪个版本。 -
要重返未来,用
git reflog
查看命令历史,以便确定要回到未来的哪个版本。
8.撤销修改
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file
。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file
,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。
9.从远程库克隆项目
git clone url
10.分支管理
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>