技术笔记
重温git
今日代码合并出现了一些问题,重温git又有一些收获,记录一下
今日代码合并出现了一些问题,重温git又有一些收获,记录一下
一、本地
add
add 将工作区的修改添加到暂存区,这时新建的文件的状态就是trace。add:工作区-》暂存区
commit
- commit是将暂存区的东西提交到当前分支,commit:暂存区-》当前分支 所以一个很常见的情况就是工作区 > 暂存区 > 当前分支的内容,也因此我们在一个分支上创建另一个分支必须先commit一下。 commit相当于本地仓库的一个快照,这个后面的注释很重要,应该是符合规范的书写方式。
- 关于工作区和暂存区的理解经常看见clean,这个clean的意思是commit之后,我们有没有修改工作区,此时工作区状态是干净的。
- 理解这个区之后,我们可以通过git log和git reset命令在各个本地各个版本之间任意穿梭。
二、远程
远程仓库默认名称是origin 默认分支是master 项目开始,一般要么在本地先建项目,然后上传到服务器。或者在服务器建立一个空项目(一般会带readme),然后pull到本地,创建项目各文件,最后push。
1.上传本地仓库到远程
- 首先在远程创建一个仓库
- 然后在本地用remote add关联远程仓库,令git push -u origin master第一次推送master分支的所有内容
- 以后就可以不用-u参数了直接push了。 但是之前在弄hexo时,在远程建立仓库,然后手贱点了个生成readme,然后就无法git push -u origin master。 但是可以直接pull到本地,然后push本地代码。
2. clone远程仓库到本地
clone可以使用各种协议,但是使用https协议各种慢,还需要使用口令。一般最好使用ssh协议。
三、分支
分支以前使本人对于git的盲点,以为之前也没有怎么太多的使用。 对于分支的使用场景和意义,廖雪峰是这样描述的。 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码, 如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交, 又存在丢失每天进度的巨大风险。现在有了分支,就不用怕了。你创建了一个属于你自己的分支,别人看不到, 还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后, 再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。 一般使用就是大家在dev分支工作,然后平时在此分支pull push ,一个小功能完成之后,就可以请求合并到主分支。