了解Git和GitHub的基础知识

我不完全理解使用Git或Github的目的; 我知道这有助于跟踪你的变化,这对于与其他人合作的人是有帮助的,但是我不和任何人合作,所以我不知道这对我是否有帮助。

我通常以网页devise师/开发人员的身份工作,但我从不需要协作。 我知道在Git中,您已经为每个存储库创build,推送,提交,创build分支等,但…

  1. Git和GitHub有什么区别?

  2. git保存本地(在用户的机器)和GitHub中的每个存储库?

  3. 你可以使用没有GitHub的Git? 如果是,使用GitHub有什么好处?

  4. Git如何比较Time Machine等备份系统?

  5. 这是一个手动过程,换句话说,如果你不承诺,你不会有一个新版本的变化?

  6. 如果不合作,并且您已经在使用备份系统,那么您为什么要使用Git?

  1. Git和GitHub有什么区别?

    Git是一个版本控制系统; 把它看作是你的代码的一系列快照 (提交)。 您可以看到这些快照的path,它们以何种顺序创build。 您可以使分支进行实验,然后回到拍摄的快照。

    GitHub是一个网页,您可以在其上发布您的Git存储库并与其他人协作。

  2. Git是否在本地(在用户的机器上)和GitHub中保存每个仓库?

    不,这只是本地的。 您可以决定在GitHub上推送(发布)一些分支。

  3. 你可以使用没有GitHub的Git吗? 如果是的话,使用GitHub有什么好处?

    是的,如果你不使用GitHub,Git会运行本地。 使用GitHub的替代scheme可以在托pipe在Dropbox上的文件上运行Git,但是GitHub是一个更加简化的服务,因为它是专门为Git制作的。

  4. Git如何比较Time Machine等备份系统?

    这是一个不同的事情,Git让你跟踪变化和你的开发过程。 如果你使用Git和GitHub,它就会成为一个备份。 但是,通常情况下,你不会把所有的时间都推到GitHub上,在这种情况下,如果出现问题,你就没有完整的备份。 我在一个与Dropbox同步的文件夹中使用git。

  5. 这是一个手动过程,换句话说,如果你没有提交,你将不会有一个新版本的更改?

    是的,承诺和推动都是手动的。

  6. 如果不合作,并且您已经在使用备份系统,那么您为什么要使用Git?

    • 如果您在提交之间遇到错误,则可以使用命令git diff查看当前代码与上次工作提交之间的差异,从而帮助您find错误。

    • 你也可以回到最后一个工作提交。

    • 如果你想尝试一个改变,但不知道它会起作用。 您创build一个分支来testing您的代码更改。 如果工作正常,则将其合并到主分支。 如果不是,就把分支扔掉,然后回到主分支。

    • 你做了一些debugging。 在提交之前,始终查看上次提交的更改。 您会看到您忘记删除的debugging打印语句。

确保你检查gitimmersion.com 。

  1. Git和GitHub有什么区别?

    Linus Torvalds会为此杀了你。 Git是他写的版本pipe理程序的名字。 GitHub是一个可以通过Gitpipe理源代码库的网站。 因此,GitHub与原来的Git工具完全无关。

  2. git保存本地(在用户的机器)和GitHub中的每个存储库?

    如果您提交更改,则会在本地存储。 然后,如果你推动提交,它也远离它们。

  3. 你可以使用没有GitHub的Git? 如果是,使用GitHub有什么好处?

    你可以,但我相信你不想自己手动设置一个git服务器。 GitHub的好处? 好吧,易于使用,很多人都知道,所以其他人可能会发现你的代码,并跟着/分叉来改善。

  4. Git如何比较Time Machine等备份系统?

    Git是专门为源代码devise和优化的。

  5. 这是一个手动过程,换句话说,如果你不承诺,你不会有一个新版本的变化?

    究竟。

  6. 如果不合作,并且您已经在使用备份系统,那么您为什么要使用Git?

    见#4。

  1. Git和GitHub有什么区别?

    Git是一个分布式的版本控制系统。 它通常运行在本地机器的命令行上。 它跟踪你的文件,并修改这些文件在“仓库”(或“回购”),但只有当你告诉它这样做。 (换句话说,您决定要跟踪哪些文件以及何时对任何修改进行“快照”。)

    相比之下,GitHub是一个网站,允许您在线发布您的Git存储库,这可能是有用的,原因很多(见#3)。

  2. Git是否在本地(在用户的机器上)和GitHub中保存每个仓库?

    Git被称为“分布式”(而不是“集中式”)版本控制系统,因为您可以在本地运行它并从Internet断开连接,然后随时将您的更改“推送”到远程系统(如GitHub)。 因此,当您手动指示Git推送这些更改时,回购更改仅出现在GitHub上。

  3. 你可以使用没有GitHub的Git? 如果是,使用GitHub有什么好处?

    是的,你可以使用没有GitHub的Git。 Git是实际跟踪你的改变的“主力”程序,而GitHub只是托pipe你的仓库(并提供Git中没有的其他function)。 以下是使用GitHub的一些好处:

    • 它提供了文件的备份。
    • 它为您提供了一个导航您的回购的可视化界面。
    • 它给其他人一个导航你的回购的方式。
    • 这使得回购协作变得容易(例如,多个人为同一个项目做出贡献)。
    • 它提供了一个轻量级问题跟踪系统。
  4. Git如何比较Time Machine等备份系统?

    Git可以备份你的文件,尽pipe它比传统的备份系统在备份的时候和你的备份时间要精确得多。 具体而言,每次您想要对更改进行快照时都要“提交”,并且该提交中包含更改的说明以及这些更改的逐行详细信息。 这对于源代码是最佳的,因为您可以轻松地逐行查看任何给定文件的更改历史logging。

  5. 这是一个手动过程,换句话说,如果你没有提交,你将不会有一个新版本的更改?

    是的,这是一个手动过程。

  6. 如果不合作,并且您已经在使用备份系统,那么您为什么要使用Git?

    • Git采用了一个强大的分支系统 ,允许您同时开发多个独立的开发线,然后根据需要合并这些分支。
    • Git允许您查看不同版本的文件之间的逐行差异,这使得故障排除更容易。
    • Git强迫你描述你的每一个提交,这使得跟踪给定文件的特定以前版本(并且可能恢复到以前的版本)变得更加容易。
    • 如果您的代码需要帮助,通过Git进行跟踪并托pipe在GitHub上,使其他人可以更轻松地查看您的代码。

为了开始使用Git,我推荐在线书籍Pro Git以及GitRef作为便捷的参考指南。 为了开始使用GitHub,我喜欢GitHub的Bootcamp和他们的GitHub指南 。 最后,我创build了一个简短的video系列 ,向初学者介绍Git和GitHub。