1.git初识

  git是一个版本管理工具,用来管理项目的不同的版本,记录下不同的提交记录,git还可以构建不同的分支,用来给不同的人来推送使用。

  推荐的git教程:https://www.cnblogs.com/foohack/p/7204372.html

2.github  和 码云之类

  github和码云等类似的git管理工具的作用是将项目在不同的人员之间进行共享,方便不同的人对代码进行修改和审查。

一开始我弄不清楚git和github之间的关系,感觉很不舒服,没法定位问题所在,现在我大体明白了他们之间的区别:git可以脱机github单据工作,只是会有很多不方便的限制,如果有一个项目,由5个人来开发,每个人之间都需要各种传输方式来传输文件,来保证代码是最新的,但是有很多不方便的地方,大大降低了开发的效率,需要花费太多时间在代码的合并上,所以github应允而生,github通过公用的网站服务器来解决这个问题,所有的代码都在服务器上备份一次,每次有人要修改代码了就执行两步,commit + push,commit是将代码提交到本地的仓库中,这个操作没有和github做交互,只是单纯的git的操作,这样子来保证本地仓库是最新的,然后执行push操作,这个操作是将本地仓库的代码推送到github上,这个时候就要执行和github的交互了,根据项目的公有性和私有性来决定是否允许你推送代码。通过这种方式保证了代码的最新状态,现在我们知道了github叫做代码托管平台的真实原因,核心的地方还是在于git,而不是github,github只是将本地的提交同步到远程仓库里面去,将用户的提交过程记录下。

  当然还有很多其他的特点,包括分支管理,权限管理,都对我们有很好的帮助,可以帮我们灵活的管理代码。

3.git的分支

  git的分支,这个功能是相当有用的,没有分支的时候,只有一条主干,你要么提交,要么不提交代码,要是你手里正在处理一个需求,突然有一个bug从天而降,你需要马上解决,你会怎么办呢,你会把之前的修改备份一下,然后会退到之前的主干代码,然后你去修改你的bug,然后测试提交并推送,然后把你需求复制进去接着改,结果又突然来了一个bug怎办,你需要马上解决,你又要重新操作,你要崩溃了,幸好,有分支可以帮你解决这个问题,你可以从主干上拉一个分支下来,这个分支和你的主干的代码完全相同,这个时候,你可以在你分支上修改你的代码,即使你提交了,也不会影响主干的代码,当你bug修改完了,你切到主干代码,然后进行代码的合并,这时候就可以推送了。推荐阅读 :git 分支的创建和使用

我没有讲明git和github的具体使用,我只是讲了git和github的区别,帮助和我一样有困惑的人来理解下他们的区别。

git与代码托管工具的更多相关文章

  1. Git学习总结(6)——作为一名程序员这些代码托管工具你都知道吗?

    作为一名程序员这些代码托管工具你都知道吗? 作为一名优秀的开发者,大家都会用到代码托管,我本人用的是github,确实github里面有很多很多开源的项目,所以我们目前的创业项目程序员客栈www.pr ...

  2. 【Git】代码托管-从基本设置开始

    Git是现在比较火的一款代码托管工具,之前也有在使用GitHub,是用GitHub for windows一个图形管理的界面,如果没有这个图形控制界面的话我估计自己又要放弃了.用BASH命令来实现托管 ...

  3. 安卓程序代写 网上程序代写[转]SVN 在线代码托管工具

    本文转载自 : http://blog.csdn.net/ithomer/article/details/8142920  作者:阳光岛主 在互联网环境使用SVN服务,你必须要有一台在互联网环境内支持 ...

  4. 支持Git的代码托管网站

    支持Git的代码托管网站: https://github.com/https://code.google.com http://www.codeplex.com/ http://git.oschina ...

  5. 代码托管工具 git

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } p. ...

  6. 各种GIT代码托管工具比较

    bitbucket免费支持5个开发成员的团队创建无限私有代码托管库. GOES是一个由GO语音编写的自组GIT托管服务. gitorious 是一个基于GIT版本控制系统的WEB项目托管平台,基于RU ...

  7. Windows 下使用git 将代码托管到开源中国-(http://git.oschina.net/)

    一.准备工作 当然是准备在windows 下使用需要的环境,和工具. msysgit  下载地址:http://msysgit.github.io/ TortoiseGit 下载地址:https:// ...

  8. git/github 代码托管图文教程

    现在都流行将代码托管到github,使用版本控制工具git,现在让我们开始一步一步的将我们本地的代码托管到github上去吧 一. git的使用 1.下载git工具 2.下载好后安装时候注意要使用vi ...

  9. GIT → 04:Git与代码托管平台

    4.1 Git 与 GitHub比较 Git 是一个版本管理工具 , 只在本地使用的一个版本管理工具,其作用就是可以让你更好的管理你的程序,比如你原来提交过的内容,后面虽然修改过,但是通过git这个工 ...

随机推荐

  1. PHP学习 Object Oriented 面向对象 OO

    定义类class class_name [extends partclass_name]{public private protected var property_name = value;publ ...

  2. MySQL——约束(constraint)详解

    该博客说说关于数据库中一个重要的知识点——约束 一.什么是约束约束英文:constraint 约束实际上就是表中数据的限制条件 二.约束作用表在设计的时候加入约束的目的就是为了保证表中的记录完整和有效 ...

  3. linux 远程连接报错 10038或者10061 或者10060

    1.检查linux的mysql是否开启 2.检查mysql的user表的host是否是% 3.检查my.cnf文件是否绑定本地 4.防火墙3306端口是否开启 假如以上都没问题,那最大的原因就是我折腾 ...

  4. Feature List

    我组最终决定所做的软件工程项目是Bing词典(UWP)的背单词模块,下面是初步定下的Feature List. 按用户场景变化顺序列举(假设是新用户): 1.用户可通过点击“背单词”标识或按钮进入背单 ...

  5. Supervised Hashing with Kernels, KSH

    Notation 该论文中应用到较多符号,为避免混淆,在此进行解释: n:原始数据集的大小 l:实验中用于监督学习的数据集大小(矩阵S行/列的大小) m:辅助数据集,用于得到基于核的哈希函数 r:比特 ...

  6. WebView 5.0+闪烁以及白屏问题完美解决

    Android webView 在5.0+上启动硬件加速,造成部分手机出现闪烁.白屏等现象 必须写下这篇博客,遇到的问题搞了很久,百度谷歌就是没有完整的答案,记录下来,方便博友们: 需求:一个简单的W ...

  7. Qt开发之Hello Qt及学习小技巧

    创建第一个Qt程序的简单流程 如果安装了andriod或ios的版本也会显示出来,这里只显示了桌面端的 一个项目文件代码结构如下: 如下图可直接编辑label里的文字内容: 运行结果:(快捷键ctrl ...

  8. OneZero第四周第二次站立会议(2016.4.12)

    1. 时间: 13:00--13:10  共计10分钟. 2. 成员: X 夏一鸣 * 组长 (博客:http://www.cnblogs.com/xiaym896/), G 郭又铭 (博客:http ...

  9. send和sendmsg性能测试【sendmsg和send的性能基本一样,并没有得到优化】

    1,摘要:测试send和sendmsg的性能,影响这两个函数性能的因素主要有发送的字节大小,增加循环次数,从100到10000000(千万)减少计算误差 2,基本信息cat /proc/cpuinfo ...

  10. maven测试时中文乱码问题解决方法

    pom.xml增加-Dfile.encoding=UTF-8配置,如下: <plugin> <!--升级到新版本解决控制台乱码问题--> <groupId>org. ...