Git 是什么?

有一次我需要向别人解释Git,所以做了一份总结的备忘录。
虽然可能有些不准确,但我尽力用简单易懂的语言来总结。

请参考以下网站

易懂的网站。
【绝对能理解】Git是什么?特点和能做的事情总结!
【初学者适用】Git是什么?首先理解流程(无代码)

你要做什么?

    • プログラム等のファイル一式を置いておく場所(サーバー上のシステム)。ファイルを修正したらどんどん最新のものに上書きしていく。

 

    • 複数人のチームで何か(プログラムでもそれ以外でも)を制作する場合や、他の人にファイルを渡したい時に、ファイルを共有できる場所。

 

    クラウド(インターネット上)のGitにファイルを置いておけば、複数の場所を移動して開発する人にとっては、どこからでも自分のファイルにアクセスできる。

在共享文件夹或谷歌云端硬盘中共享文件与其他方式有何不同?

1. 什么时候,谁对哪个文件进行了何种修改的变更历史将自动记录下来。

除非是一个做事细致的人,否则关于更改的5W1H(?),即「何时」「谁」「对哪个文件做了」「什么样的更改」「为何目的」,很快就会被遗忘。将文件放入Git后,关于「何时」「谁」「对哪个文件做了」「什么样的更改」的部分会自动、准确地记录下来。无论文件数量、更新次数以及涉及的人数有多少,都能准确记录下来。关于「为何目的」的部分可以在提交(COMMIT)更改到Git时出现的界面上进行评论。

~テキストデータの場合だけ、「どんな変更を」の自動記録ができる ~「どんな変更を」の自動記録は、テキストデータ(Windowsの「メモ帳」で見れる文字のデータ)限定。
Officeファイルや画像ファイルなどは、「いつ」「誰が」「どのファイルに」の記録のみで、具体的な変更内容は記録されない。

Gitは、自動で、全てのファイルの中身を解析し、前回との変更内容を自動で見つけ出して記録してくれるのだが、Officeファイルや画像の中身は解析できないため。

それらのファイルの場合、変更者が自分で、Gitに反映(COMMIT)するときのコメントで書いておく。

2. 可以轻松地恢复特定时点的过去文件状态。

无论进行多么细微的更改,每一次都会自动在后台创建备份。因此,我认为当程序发生错误时,经常会有想要恢复到错误发生之前的时候,而这可以很容易地实现。
(这不仅限于文本数据,任何文件都会创建备份)

如果数据不需要更改历史记录或文件数量较少,且能够记住所有的变更内容,那么使用Git并非必然之选,因为它需要花费一定的时间成本来构建环境和学习使用方法。

谁会使用?

也许,这些人把程序放在了Git上面……

複数人で、ある程度の規模のプログラムを開発するチーム

チーム開発の手間を減らすためや、トラブル回避のために使う。

IT業界に就職しようとしている人

就職先で使う可能性が高いので、学習しておくために使う。
自分が作成したプログラムのソースコードを、採用担当者にすぐ渡せるよう、クラウドのGitに置いておく。Gitが使える証明にもなる。

プログラム技術者の情報共有

プログラムに関する知識を、誰かと共有・情報交換するために使う。

根据相关链接的网站,最近据说甚至文章撰写者也在使用它。

如果没有Git呢?

如果没有Git(版本管理系统),人数较多的程序开发大概会变成这样…

    • エラーが起きたらすぐ戻せるように、ファイルを修正する前には必ずコピーして、ファイル名に日時をつけて(「sample_20191101100331.java」みたいな)バックアップしておくことが推奨される。

 

    • そのうちに、日時のついたコピーデータだらけになる。コピーデータをいちいち作ったり管理するのも大変。

 

    • 情報共有のため、「いつ」「誰が」「どんな変更を」「どんな目的で」修正したかのコメントを、どこか(ファイルの先頭部分や、変更箇所の近辺など)に書くのが必須ルールになる。そのうちにプログラムがコメントだらけになる。

 

    • それでも、誰かの変更を、他の人が消したり安易に変更してしまうことが頻発する。

 

    • 上書きのトラブル

 

    AさんとBさんが同じファイルの別の箇所を修正した場合、Aさんが先に共有フォルダーに自分の修正ファイルを置いた後、Bさんが誤って上書きすると、Aさんの修正が消えてしまい、戻せなくなったり。

Git有哪些类型

(1) 云端(即互联网)上的Git

以下是两个著名的例子。

GitHub
GitHub 是一个允许全球人们保存和发布自己的作品(如程序代码和设计数据)的网络服务。它经常被用于信息共享。在免费课程中,所有数据都会公开展示在全球。而通过付费课程,你可以将数据设为仅个人私有。

GitLab
GitLab 是类似于 GitHub 的服务,特点在于可以免费创建非公开的代码库(代码库:文件存储位置)。

听说GitHub也可以使用私人仓库了,但是似乎有一些功能限制。
参考网站:GitHub 现在能免费无限制地创建私人仓库了☆

(2) 构建在公司内部或个人电脑上的Git

将无法公开在社外的程序等放置在云端上,这样一来,可以成为应对网络故障或Git服务端故障的措施。此外,有些人也会搭建Git服务器来提升自己的技能。

其他参考网站

https://blog.sixapart.jp/2014-03/mttips-02-what-is-git.html
https://www.startup-git.com/beginners/git-merit/

广告
将在 10 秒后关闭
bannerAds