刚开始用 Git 和 GitHub?越来越简单了,真的!

刚开始用 Git 和 GitHub?越来越简单了,真的!

原文:https://medium.com/hackernoon/just-starting-out-with-git-and-github-it-gets-easier-honest-c4fabc93c11

Image credit: https://gist.github.com/pierreinglebert/11209464

A familiar sentiment for anyone starting out with Git

毫无疑问你听说过 Git 或者 GitHub 的源码控制,但是什么是源码控制?

这是对源代码控制的基本概述,以及在团队环境中使用它或自己使用它的优势,如果你在谷歌上搜索源代码控制,你可以看到维基百科是如何定义源代码控制的,如下所示:

版本控制(也称为版本控制、源代码控制或(源代码)代码管理(SCM))是对同一信息单元的多个版本的管理

酷故事 br0!换句话说:源代码控制允许任何规模的团队在不同的位置进行分布式工作,同时避免源代码变更中的冲突。

真的!?谢谢你澄清了这件事!

让我们这样来看…

用最简单的术语来说,它就像一个【另存为】。您想要新文件,但不删除旧文件中的更改。这是一种日常情况,除了在一个软件项目中有很多变化的可能性。

概念

这里有一些关于版本控制的基本概念,我将很快介绍一下,这些术语在许多 SCM 系统中使用,有些与 Git 和 GitHub 相关,有些与其他系统相关。

Repository/repo: 存储文件的数据库。

分支: 创建一个单独的回购副本,以便在您的计算机上使用。

恢复/回滚: 返回到先前保存的代码库/回购版本。

Push: Push 是回购上的一个访问级别,如果您没有 Push 访问权限,则需要提出 pull 请求。

Pull: 如果您没有推送权限,您可以发出一个 Pull 请求,通知回购所有者您希望将您的更改合并到他们的代码中。

如果您刚刚开始,那么您最常用的命令可能是:

git add .
git commit -m 'some informative message'
git push origin master

在我学习如何将代码备份到 GitHub 的早期,这些命令对我很有帮助。

Git 和 GitHub 是两个不同的东西,Git 是一个自由和开源的版本控制系统,而 GitHub 使用 Git 技术在 GitHub.com 的服务器上托管你的库。

当我第一次开始使用 Git 和 GitHub 时,我对它们有点困惑,我以前对 VCS 很熟悉,但那是以微软的 Visual SourceSafe 和 Team Foundation Server 的形式出现的,在那里你有一个很好的 GUI 来指导你完成签入和签出过程,对于那些过程是:

  • 签出:在你的机器上复制你想要修改的库,一旦你完成了你的修改,签入你的修改。
  • 签入:将您的更改添加回存储库,并附带一条消息,详细说明您所做的更改。

使用 Git 就没那么花哨了,都是通过命令行,但与 VSS 和 TFS 几乎一样。

  • 克隆存储库:在您的机器上制作存储库的副本。
  • 做出改变。
  • 一旦进行了更改,就用伴随的提交消息将它们添加回去。
  • 将更改推回到 Github 上的 repo。

GitHub 上的文档对于你想要实现的任何事情都是很棒的,在这篇文章中,我引用了一些文档。

不过,这可能会有点让人不知所措,尤其是如果您不同步,也就是说,忘记在远程版本上进行更改,然后在将更改加载到本地版本之前尝试签入您的更改。如果事情出了一点差错,我一点也不自信,但是我已经开发了一个“稍后提交通常是完美的”方法,所以如果你真的打破了某些东西,你不会损失太多宝贵的时间去找出哪里出了差错。

如果你看一看你从 GitHub 克隆的一个 repo,你会看到有一个名为.git的文件,这就像一个你在你的机器上所做的所有更改的小数据库,它包含了连接到 GitHub 并对主 repo[或任何你正在将更改推送到的分支]进行更改所需的所有信息。

我做了一个备忘单要点,我每次接近 Git 时都会用到它,现在它已经变成了我日常使用的其他备忘单的一个回购

在这本书里,我讲述了这些情况:

不同的情况下工作流程会有所不同,对我来说,作为一名 noob 开发人员,我试图记录我遇到的任何 Git,以便我可以在需要的时候引用它,但不记得我在周三 21:45 做了什么,只是为了将代码签入 GitHub。

有许多与 Git 集成的 GUI 可以与 GitHub 一起使用,官方的 GitHub one 非常好,但我很快就陷入了 GUI 无法让我摆脱的情况,所以我一直坚持使用终端,虽然有 VSCode,它有一个我每天使用的漂亮的 Git UI,但我仍然使用终端做一些事情:

git status
git checkout <branch-name>
git [push] tags

所有这些都很方便,可能有一些扩展可以帮助解决这些问题,但是现在我很乐意通过命令行来完成。

你有什么在 Git 中使用的技巧或诀窍想要分享吗?请随时留下您的评论,或者通过拉取请求添加到回购中。

如果这些对你有所帮助,请随意喜欢这篇文章,并在社交媒体上分享。

非常感谢。

黑客中午是黑客如何开始他们的下午。我们是 @AMI 家庭的一员。我们现在接受投稿并乐意讨论广告&赞助机会。

如果你喜欢这个故事,我们推荐你阅读我们的最新科技故事趋势科技故事。直到下一次,不要把世界的现实想当然!


本站为非盈利网站,作品由网友提供上传,如无意中有侵犯您的版权,请联系删除