随笔分类 -  Git

摘要:发布一个版本时,我们通常先在版本库中打一个标签(tag), 这样,就唯一确定了打标签时刻的版本。 将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本库的一个快照。 Git的标签虽然是版本库的快照,但其实它就是指向某个commit的指针(跟分支很像对不对?但 阅读全文
posted @ 2020-05-21 14:57 萌胖胖 阅读(157) 评论(0) 推荐(0)
摘要:当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了, 并且,远程仓库的默认名称是origin。 如果是本地仓库关联远程仓库 要查看远程库的信息,用git remote 或者,用git remote -v显示更详细的信息 上面显示了可以抓取和推送的orig 阅读全文
posted @ 2019-05-13 08:19 萌胖胖 阅读(619) 评论(0) 推荐(0)
摘要:软件开发中,总有无穷无尽的新的功能要不断添加进来。 添加一个新功能时,你肯定不希望因为一些实验性质的代码,把主分支搞乱了, 所以,每添加一个新功能,最好新建一个feature分支, 在上面开发,完成后,合并,最后,删除该feature分支(个人倾向于不删)。 只是演示效果, 开发中如果并不需要此功能 阅读全文
posted @ 2019-05-12 13:16 萌胖胖 阅读(2294) 评论(0) 推荐(0)
摘要:BUG分支 廖雪峰 软件开发中,bug就像家常便饭一样。有了bug就需要修复, 在Git中,由于分支是如此的强大,所以, 每个bug都可以通过一个新的临时分支来修复,修复后,合并分支,然后将临时分支删除。 -- 当你接到一个修复一个代号101的bug的任务时(假设该bug在master分支上),很自 阅读全文
posted @ 2019-05-12 09:21 萌胖胖 阅读(1957) 评论(0) 推荐(0)
摘要:通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。 如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit, 这样,从分支历史上就可以看出分支信息。 下面我们实战一下--no-ff方式的git merg 阅读全文
posted @ 2019-05-11 20:48 萌胖胖 阅读(3463) 评论(0) 推荐(1)
摘要:人生不如意之事十之八九,合并分支往往也不是一帆风顺的。 准备新的feature1分支,继续我们的新分支开发: -- 在feature1分支上修改readme.txt最后一行,改为: 在feature1分支上提交: 切换到master分支: 在master分支上把readme.txt文件的最后一行改为 阅读全文
posted @ 2019-05-11 20:00 萌胖胖 阅读(262) 评论(0) 推荐(0)
摘要:分支在实际中有什么用呢? 假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。 如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。 现在有了分支,就不用怕了。 你创建了一个属于你自己的分支,别人看不到 阅读全文
posted @ 2019-05-11 19:22 萌胖胖 阅读(409) 评论(0) 推荐(0)
摘要:自行注册GitHub账号。 由于你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置: 第1步:创建SSH Key 在用户主目录下,看看有没有.ssh目录, 如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件, 如果已经有了,可直接跳到下一步。 阅读全文
posted @ 2019-05-11 17:45 萌胖胖 阅读(245) 评论(0) 推荐(0)
摘要:先添加一个新文件test.txt到Git并且提交: 一般情况下,你通常直接在文件管理器中把没用的文件删了,或者用rm命令删了 这个时候,Git知道你删除了文件, 因此,工作区和版本库就不一致了, git status命令会立刻告诉你哪些文件被删除了: 现在你有的选择: 情况一 是确实要从版本库中删除 阅读全文
posted @ 2019-05-11 16:00 萌胖胖 阅读(571) 评论(0) 推荐(0)
摘要:git reset soft,hard,mixed之区别深解 阅读全文
posted @ 2019-05-11 13:32 萌胖胖 阅读(321) 评论(0) 推荐(0)
摘要:工作区内容修改了, 但是并未add到暂存区, 想 回退到上一个版本 在readme.txt中添加了一行: 纠正这次修改。你可以删掉最后一行,手动把文件恢复到上一个版本的状态。 如果不手动删除进行恢复 使用git status 查看状态 你可以发现,Git会告诉你,git checkout -- fi 阅读全文
posted @ 2019-05-11 13:24 萌胖胖 阅读(178) 评论(0) 推荐(0)
摘要:Git跟踪并管理的是修改,而非文件。 什么是修改? 比如你新增了一行,这就是一个修改, 删除了一行,也是一个修改, 更改了某些字符,也是一个修改, 删了一些又加了一些,也是一个修改, 甚至创建一个新文件,也算一个修改。 为什么说Git管理的是修改,而不是文件呢? 我们还是做实验。 第一步,对read 阅读全文
posted @ 2019-05-11 11:59 萌胖胖 阅读(203) 评论(0) 推荐(0)
摘要:分布式集中式 CVS及SVN都是集中式的版本控制系统 , 而Git是分布式版本控制系统 集中式版本控制系统,版本库是集中存放在中央服务器的, 而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活, 干完活了,再把自己的活推送给中央服务器。 中央服务器就好比是一个图书馆, 阅读全文
posted @ 2019-05-11 11:35 萌胖胖 阅读(1081) 评论(0) 推荐(0)