web-dev-qa-db-ja.com

CLIを使用してgitlabでリポジトリを作成する

私たちのオフィスにはgitlabセットアップがあり、そこに毎週約100〜150のプロジェクトを作成する必要がありますが、管理者はリポジトリの作成とチームの割り当てを管理したいと考えています。毎週、多くのレポを作成するのは誰にとっても少しの仕事です。

create repo on Gitlab using CLI-sshを使用する必要があるかどうかは気にしません。

25

gitlab-cli を使用し、シェルスクリプトを使用してプロセスを自動化できます。私はこれをgitlab 5.xで使用しましたが、サイトによると、gitlab 6では動作しない可能性があります。

2
thameera

gitlab-cli はメンテナンスされなくなりました。作成者は Gitlab モジュールを参照して代わりに使用します-これにはCLIツールも含まれています。

特定の要求、つまりコマンドラインでプロジェクトを作成するには、次のコマンドを使用します。

gitlab create_project "YOUR_PROJECT_NAME" "{namespace_id: 'YOUR_NUMERIC_GROUP_ID'}"

namespace_idではなく、必ずgroup_idオプションを使用してください。 GROUP_IDが何かわからない場合は、

gitlab groups | grep YOUR_GROUP_NAME

見つけるために。

各コマンドのパラメーターは APIドキュメント から推測できます。非スカラー値のパラメーターは、(上記のように)インラインYAML構文でエンコードする必要があります。

18
Michael Lihs

リポジトリを作成したいだけなので、サードパーティのアプリは必要ありません。リポジトリを作成するgitlab APIに投稿リクエストを直接送信できます。

プロファイルの アカウントタブ に移動すると、プライベートトークンが見つかります。了解。

ターミナルを開いて、プライベートトークン(fooなど)とレポ名(barなど)を指定してこのコマンドを実行します。

curl -H "Content-Type:application/json" https://gitlab.com/api/v4/projects?private_token=foo -d "{ \"name\": \"bar\" }"

このコマンドを毎回実行したくない場合は、便宜上、シェルスクリプトを作成できます。

#!/bin/sh

curl -H "Content-Type:application/json" https://gitlab.com/api/v4/projects?private_token=foo -d "{ \"name\": \"$1\" }"

これをファイルgcr.shに保存し、chmod +x gcr.shを使用して実行可能にします。

リポジトリ名barを作成するには、次を実行します

$ ./gcr.sh bar
13
ChillarAnand

1.まとめ

使いやすい:


2.免責事項

この回答は2019年8月に関連しています。将来、そのデータは古くなる可能性があります。


3.ラボ(推奨)

3.1。約

lab — CLIツール。GitLabリポジトリでの操作を簡単にします。 labは、GitHubの hub 拡張に相当するGitlabです。

3.2。使用法

最初の実行後、ラボはトークンの入力を提案します。 パーソナルアクセストークンを作成します 目的のスコープapi→端末に貼り付けます→ Enter

次に lab project create

lab project create -n KiraLab --public -d "Kira lab demo project"

3.3。結果

lab

3.4。なぜおすすめ

オプションが利用可能です:

  1. --public —リポジトリを非公開ではなく公開する
  2. -d--description —説明を作成しています

lab description


4. gitlab-cli

4.1。約

GitLabリポジトリ操作用のクロスプラットフォームのGo作成コマンドラインユーティリティ。

4.2。使用法

GitLabパーソナルアクセストークンを作成しますgitlab-cli login YOUR_TOKEN →実行 gitlab-cli project create コマンド:

gitlab-cli project create KiraGitLabCLI

4.3。結果

gitlab-cli

4.4。注意

このGoプロジェクトとRuby gitlab-cli ツールを混同しないでください- @ thameera回答


5.外部リンク

  1. GitLab CLIクライアント
  2. 手順、コマンドラインからGitHubリポジトリを作成する方法 (ロシア語)

これが私の〜/ .bashrcにあるものです

gitlify() {
    [ $# -eq 0 ] && return 1
    repo_name=$1
    username=smeagol
    token=01234567890

    curl -H "Content-Type:application/json" https://gitlab.com/api/v4/projects?private_token=$token -d "{\"name\": \"$repo_name\"}"
    if [ $? -eq 0 ];then
        git init
        git add .
        git commit -m "first blood"
        git remote add Origin [email protected]:$username/$repo_name.git
        git Push -u Origin master
    else
        echo "error create gitlab repo $repo_name"
    fi
}

まず、ユーザー名のトークンを取得する必要があります。このbash関数を配置したら、次の方法で使用できます。

mkdir /tmp/firstblood
echo '#hello world' > /tmp/firstblood/README.md
cd /tmp/firstblood
gitlify fallenangel

このスニペットはgitlab.com専用です。 github.comに対してgitifyという名前の別のファイルがあります。

0
typelogic

コマンドラインからリポジトリを作成する最も簡単な方法

touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add Origin [email protected]:alexpchin/<reponame>.git
git Push -u Origin master
0
midnightgamer