リポジトリ

リポジトリは、GitLabにコードベースを保存し、バージョン管理で変更するために使うものです。 リポジトリはプロジェクトの一部であり、他の多くの機能を持っています。

リポジトリの作成

新しいリポジトリを作成するには、新しいプロジェクトを作成するか、既存のプロジェクトをフォークするだけです。

新しいプロジェクトを作成したら、UI(以下のセクションを読んでください)またはコマンドラインから新しいファイルを追加することができます。 コマンドラインからファイルを追加するには、新しいプロジェクトを作成するときに画面に表示される指示に従うか、コマンドラインの基本ドキュメントを読んでください。

重要:セキュリティ上の理由から、コマンドラインを使用する場合はSSHでGitLabに接続することを強くお勧めします。

ファイル

GitLab12.10以降では、リポジトリのファイルツリーでファイル名の横に拡張子に応じたアイコンが表示されます:

Repository file icons

ファイルの作成と編集

GitLabにファイルをプッシュすることで、コードベースをGitLabリポジトリにホストすることができます。 ユーザーインターフェイス(UI)、またはコマンドラインからローカルコンピュータとGitLabを接続することができます。

GitLab CI/CDがコードをビルド、テスト、デプロイするように設定するには、リポジトリのルートに.gitlab-ci.ymlというファイルを追加します。

ユーザーインターフェースから

GitLabのUIを使えば、コマンドラインに触れることなく多くのGitコマンドを実行することができます。 普段からコマンドラインを使っている人でも、時にはGitLabのUIを使った方が簡単なこともあります:

コマンドラインから

コマンドラインを使い始めるには、コマンドラインの基礎知識をお読みください。

ファイルの検索

GitLab のファイルファインダーを使ってリポジトリ内のファイルを検索します。

サポートされているマークアップ言語と拡張機能

GitLabは、リポジトリ内のファイルのコンテンツに使える多くのマークアップ言語(軽量マークアップ言語と呼ばれることもあります)をサポートしています。 これらは主にドキュメンテーションの目的で使われます。

ファイルの正しい拡張子を選ぶだけで、GitLabはマークアップ言語に従ってレンダリングします。

マークアップ言語 エクステンション
プレーンテキスト txt
マークダウン mdownmkd, , 、mkdnmdmarkdown
再構造化テキスト rst
アスキードック adocadasciidoc
テキスタイル textile
アールドック rdoc
組織モード org
クリオール creole
メディアウィキ wiki,mediawiki

リポジトリのREADMEファイルとインデックスファイル

READMEindex ファイルがリポジトリに存在する場合、GitLabはそのファイルを開かなくても自動的にその内容をプリレンダリングします。

プレーンテキストでも、サポートされているマークアップ言語の拡張でもかまいません:

優先順位について注意すべき点があります:

  1. READMEindex の両方のファイルが存在する場合、常にREADME が優先されます。
  2. 異なる拡張子を持つ複数のファイルが存在する場合、それらはアルファベット順に並べられますが、拡張子を持たないファイルは例外で、常に最後に優先されます。 例えば、README.adocREADME.mdよりも優先され、README.rstREADMEよりも優先されます。

Jupyterノートブックファイル

JupyterNotebook(以前はIPython Notebook)ファイルは、多くの分野でインタラクティブなコンピューティングに使用され、ユーザーのセッションの完全な記録を含み、コード、説明テキスト、数式、リッチな出力を含みます。

JupyterノートブックとGitLabの使い方をお読みください。

OpenAPIビューア

GitLab 12.6 で導入されました

GitLabはファイルビューアでOpenAPI仕様ファイルをレンダリングすることができます。ファイル名にopenapi またはswagger が含まれ、拡張子がyaml,yml,jsonの場合です。以下の例はすべて正しいです:

  • openapi.yml
  • openapi.yaml
  • openapi.json
  • swagger.yml
  • swagger.yaml
  • swagger.json
  • gitlab_swagger.yml
  • openapi_gitlab.yml
  • OpenAPI.YML
  • openapi.Yaml
  • openapi.JSON
  • openapi.gitlab.yml
  • gitlab.openapi.yml

それから、レンダリング:

  1. GitLab の UI でリポジトリ内の OpenAPI ファイルに移動します。
  2. Display source “ボタンと “Edit “ボタンの間にある “Display OpenAPI “ボタンをクリックします(OpenAPIファイルが見つかると、”Display rendered file “ボタンに置き換わります)。

ブランチ

詳しくはブランチをご覧ください。

コミット

変更をコミットすると、その変更をブランチに反映させることになります。 コマンドラインでは、プッシュする前に何度もコミットすることができます。

  • コミットメッセージ:コミットメッセージは、何が変更されたのか、さらに重要なのはなぜ変更されたのかを特定するために重要です。 GitLabでは、コミットメッセージにキーワードを追加することで、以下のアクションのいずれかを実行することができます:
    • GitLab CI/CDパイプラインをトリガーする:GitLab CI/CDでプロジェクトを設定している場合、コミットごとではなく、プッシュごとにパイプラインをトリガーします。
    • パイプラインのスキップ:コミットメッセージにキーワード[ci skip]を追加すると、GitLab CI/CDはそのパイプラインをスキップします。
    • イシューとマージリクエストの相互リンク:相互リンクは、ワークフローの中で関連するものを追跡するのに最適です。 もしコミットメッセージの中でイシューやマージリクエストについて言及すると、それぞれのスレッドに表示されます。
  • コミットをcherry-pick:GitLabでは、UIからコミットをcherry-pickすることができます。
  • コミットの差し戻し:UI から選択したブランチにコミットを簡単に差し戻せます。
  • コミットに署名する:GPGを使ってコミットに署名します。

プロジェクトとリポジトリのサイズ

プロジェクトのサイズは、プロジェクトの詳細ページで報告されます。 報告されるサイズは、最大15分ごとに更新されるため、最近のアクティビティを反映していない可能性があります。 表示されるファイルサイズには、リポジトリファイル、アーティファクト、LFSが含まれます。

プロジェクトのサイズは、圧縮、ハウスキーピング、その他の要因により、インスタンスごとに若干異なる場合があります。

リポジトリサイズの上限は管理者によって設定される場合があります。GitLab.comのリポジトリサイズの上限はGitLabによって設定されます。

投稿者

あなたのコードベースへのすべての貢献者は、プロジェクトの設定 > 貢献者の下に表示されます。

コミット数の多い共同作業者から少ない共同作業者へと並べられ、美しいグラフで表示されます:

contributors to code

リポジトリグラフ

リポジトリグラフは、ブランチやマージなどのリポジトリネットワークの履歴を視覚的に表示します。 これは、リポジトリで使われている Git フロー戦略を視覚化するのに役立ちます:

repository Git flow

プロジェクトのリポジトリ> グラフの下にあります。

リポジトリ言語

各リポジトリのデフォルトブランチについて、GitLabはどのプログラミング言語が使われたかを判断し、プロジェクトページに表示します。 この情報が欠けている場合は、プロジェクトのデフォルトブランチを更新した後に追加されます。 この処理には最大5分かかることがあります。

Repository Languages bar

すべてのファイルが検出されるわけではありません。特に、ドキュメント、ベンダーのコード、ほとんどのマークアップ言語は除外されます。 この動作は、デフォルトを上書きすることで調整できます。たとえば、.proto ファイルを検出できるようにするには、リポジトリのルート.gitattributes に以下を追加します。

*.proto linguist-detectable=true

ロックされたファイル

ファイルロックを使用してファイルをロックし、競合する変更を防止します。

リポジトリのAPI

リポジトリAPI を使ってリポジトリにアクセスできます。

Apple Xcodeのクローン

GitLab 11.0で導入されました

.xcodeproj または.xcworkspace ディレクトリを含むプロジェクトは、プロジェクトのクローンに使用される Git URL の隣にある新しい「Xcode で開く」ボタンを使用して、Xcode でクローンできるようになりました。 このボタンは、MacOS でのみ表示されます。

ソースコードのダウンロード

GitLab 11.11でディレクトリダウンロードのサポートが導入されました。

リポジトリに保存されているソースコードは、UIからダウンロードすることができます。 ダウンロードアイコンをクリックすると、ドロップダウンが開き、以下のダウンロードリンクが表示されます:

Download source code

  • ソースコード:現在表示しているブランチのソースコードをダウンロードできます。 利用可能な拡張子:zip,tar,tar.gz,tar.bz2
  • Directory:サブディレクトリを表示している時のみ表示されます。 これにより、ユーザーは現在表示している特定のディレクトリをダウンロードすることができます。また、zip,tar,tar.gz,tar.bz2でも利用可能です。
  • アーティファクト最新のCIビルドのアーティファクトをダウンロードできます。