Git的基本

版本控制系统是什么?

    • 作業内容を記録していくことができる

 

    過去の作業内容を簡単に把握できたり、特定の日時の状態に戻したりができる

将整个文件夹进行复制,并附上日期保存……这也是版本控制的一种方法。
但是这种方法很难了解详细的变更内容。

通过使用Git进行版本控制,可以随时参考过去的状态。


Git的特点

具有以下特点的版本管理系统。

    • 分散型 … 一度サーバからソースコードを取得すればオフラインで作業でき、任意のタイミングでサーバに反映できる

 

    • 高速 … SVNなど他のバージョン管理システムよりも、高速に動作する

 

    賢いマージ … 他のバージョン管理システムよりも、作業内容を賢くまとめてくれる

代码库

在中文中,可以这样表达:

源代码可以通过被称为“代码仓库”的地方进行管理。
最好在托管服务上创建代码仓库。


主机服务

管理代码库的地方。
如果是单人操作,可以不必用它,但为了进行备份,建议还是使用。如果有多人操作,则必须使用。
一些著名的选择包括:

    • GitHub … 一番メジャーだと思われる。オープンソースで公開する場合に最適。非公開リポジトリを作りたい場合は有料

 

    Bitbucket … 無料で非公開リポジトリを作れる。1リポジトリに5ユーザ以上参加させたい場合は有料

Git的使用

    • コマンドで操作する

 

    Sourcetreeなどグラフィカルなソフトウェアで操作する

在使用Windows或Mac时,最好使用图形化软件。


克隆

将代码库的内容复制到本地。
Git不仅在服务器上还在本地有代码库的副本,并定期进行同步。


提交、推送和拉取

    • コミット … ローカルのリポジトリに作業を記録する

 

    • プッシュ … コミット内容をサーバのリポジトリに記録する

 

    プル … サーバのリポジトリの内容をローカルのリポジトリに反映する(他の人の変更内容を取り込む)

文件的状态

    • 作業ディレクトリ … 作業中のファイル

 

    • ステージングエリア … 次にコミットされるファイル

 

    Gitディレクトリ … コミットされたファイル

有三个。
将工作目录中的文件移到暂存区,并在移动到Git目录时附上注释(即提交)。
通过暂存区,可以选择性地将部分文件作为提交的对象。

如果能够做到这一点,即使只是最基本的,也能够使用Git。


分支和合并

创建分支可以同时进行多个任务。
当任务完成后,可以将其合并到原位置。
在多人合作时尤其发挥作用。


冲突

在合并时,指的是操作内容发生了冲突。

    • マージ元の作業が正しいとみなす(’相手の変更’を使って解決)

 

    • マージ先の作業が正しいとみなす(’自分の変更’を使って解決)

 

    手動で調整し、コミットしなおす(解決済みにする)

对于Sourcetree,你可以右键点击冲突的文件,然后选择“解决冲突”从而选择解决方法。


分支模型

在Git中,可以自由地创建分支,但如果没有任何规则地创建分支,会导致混乱。以下是一些著名的规则:

    • GitHub Flow … 小規模開発向け。masterブランチから開発用ブランチを作成し、作業が完了したらmasterブランチに戻す

 

    Git Flow … 中規模~大規模開発向け。master、develop、feature、release、hotfix という5種類のブランチを使い分ける

有些地方基于 Git Flow,采用了自己独特的分支模型来进行运作。


提交的程度和消息

为了方便稍后复查,请在提交时意识到这一点。
诸如“在提交时写上问题编号”之类的独特规定也经常被制定。


.gitignore文件

可以指定将文件排除在版本控制之外。

将Thumbs.db和.DS_Store排除在管理范围之外。
同时排除其他与环境相关的配置文件、过大的视频文件和库文件,可以使管理更容易。


課題管理和Wiki

大多数的托管服务都已准备好。
若能善加利用,非常方便。有时还可以使用其他服务和工具,例如Backlog或Redmine。


最后

熟悉了Git后,就不会再想回到没有进行Git管理的项目开发了。然而,熟悉是必要的。如果陷入不明白的情况,就应该向身边的人请教。

bannerAds