機能追加 #385

x-generation-aggregationリポジトリ追加

山本 義治9年以上前に追加. 9年以上前に更新.

ステータス:解決開始日:2015/07/10
優先度:通常期日:
担当者:山本 義治進捗 %:

0%

カテゴリ:ログ集計作業時間の記録:-
対象バージョン:-

履歴

#1 山本 義治9年以上前に更新

git共有リポジトリ作成

[49.212.176.26]

[admin]$ cd ~/git
[admin]$ git init --bare x-generation-aggregation.git

redmine連携用hook作成

[49.212.176.26]

[admin]$ vi ~/git/x-generation-aggregation.git/hooks/post-receive
 #!/bin/sh

 echo "redmine update" 
 ssh -t admin@219.94.235.108 <<EOF
 cd /var/lib/git/x-generation-aggregation.git
 git fetch --all
 exit

[219.94.235.108]

[admin]$ cd  /var/lib/git/
[admin]$ git clone --mirror admin@49.212.176.26:/home/admin/git/x-generation-aggregation.git
[admin]$ cd x-generation-aggregation.git
[admin]$ git fetch --all

slack連携用hook作成

[49.212.176.26]

[admin]$ vi ~/git/x-generation-aggregation.git/hooks/post-update
#!/usr/bin/php
<?php

// Slackで発行したwebhookURLをセット
$slack_webhook = "https://hooks.slack.com/services/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";

// Slack channel
$channel = "#sdk";

// Slack username
$username = "Git hooks";

// リポジトリ名
$repo = "x-generation-aggregation";

// リファレンス取得
$ref = $argv[1];

// ブランチ取得
$cmd  = "git rev-parse --symbolic --abbrev-ref $ref 2> /dev/null";
$branch = exec($cmd, $ret);

// リビジョン取得
$cmd = "git log -1 --pretty=format:\"%h\" $branch 2> /dev/null";
$rev = exec($cmd, $ret);

// コミットユーザー取得
$cmd = "git log -1 --pretty=format:\"%an\" $branch 2> /dev/null";
$author = exec($cmd, $ret);

// コミットメッセージ取得
$cmd = "git log -1 --pretty=format:\"%s\" $branch 2> /dev/null";
$commit = exec($cmd, $ret);

$text = "[ $repo ][ <http://219.94.235.108:8888/projects/sdk/repository/$repo?rev=".urlencode($branch)."|$branch> ] <http://219.94.235.108:8888/projects/sdk/repository/$repo/revisions/$rev|$rev - $author : $commit>";

$post_array = array(
        'channel' => $channel,
        'username' => $username,
        'text' => $text
    );  
//print_r($post_array);
// Slackへpost
$process = curl_init($slack_webhook);
curl_setopt($process, CURLOPT_POST, true);
curl_setopt($process, CURLOPT_POSTFIELDS, array('payload' => json_encode($post_array)));
curl_exec($process);
curl_close($process);
?>             

ローカルリポジトリ

[ローカルPCで新規リポジトリ作成する場合]

[user]$ cd プロジェクトの場所/
[user]$ git init
[user]$ git add .
[user]$ git commit -m 'コメント'
[user]$ git remote add origin ssh://admin@49.212.176.26:/home/admin/git/x-generation-aggregation.git

[ローカルPCへクローンする場合]

[user]$ git clone ssh://admin@49.212.176.26:/home/admin/git/x-generation-aggregation.git

[git flowを利用する場合]

①sourcetree起動→新規リポジトリ→ローカルリポジトリ作成→ソースコミット
②設定メニュー→リモートリポジトリ追加
名前: origin
パス: ssh://:/home/admin/git/x-generation-aggregation.git

③git flowボタン→初期化画面でそのままOKを押下
④作業フローは下記参照
http://219.94.235.108:8888/documents/17

#2 山本 義治9年以上前に更新

  • ステータス新規 から 解決 に変更

他の形式にエクスポート: Atom PDF