【ServiceNow】ServiceNow✕GitHub連携方法

# 1\. はじめに
本記事では**ServiceNowとGitHubを連携させる方法をステップごとに解説します**．

開発初心者の方でも迷わず進められるように，設定時の注意点やポイントも含めて丁寧にまとめました．
ServiceNow Studioやアプリケーション開発に慣れてきた方が，次のステップとしてチーム開発や本格的なバージョン管理に進むための第一歩としてぜひ参考にしてください．
# 2\. 事前準備
今回の説明では以下の事前準備を前提に説明を行います．
- [GitHub](https://github.co.jp/)のアカウント
- ServiceNowの開発インスタンス
[取得方法はこちらから](https://www.servicenow.com/docs/ja-JP/bundle/yokohama-application-development/page/build/custom-application/task/get-dev-instance.html)
- アプリケーションの作成

# 3\. 連携手順
連携をするために，3.1・3.2ではまずGitHub側の準備をしていきます．
## 3\.1 GitHubで新しいリポジトリを作成
1\. [GitHub](https://github.co.jp/)にログイン
2\. 画面右上の「＋」アイコン > New repositoryを選択
3\. リポジトリの情報を入力しCreate repositoryをクリック
| 入力項目 | 説明 | 入力内容 |
|:-----------|:------------|:------------|
| Repository name      | リポジトリの名前（URLにも使われる）        | my-project         |
| Decription(optional)    | 説明を入力      | 任意      |
| Public/Private      | 公開か非公開かを選択   | どちらかを選択       |

![repository.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3941957/b547fd91-dafb-42f6-b639-770733d4455a.png)

4\. Quick setupからHTTPSを選択しURLをコピー
![https.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3941957/6e60dd83-ceeb-45d4-bb6a-ea05ce90daab.png)

::: note info
このURLは3.3の手順6で使用します
:::
## 3\.2 GitHubで個人アクセストークン（PAT）を発行する
### 個人アクセストークンとは
GitHubでHTTPS経由の操作（push/pullなど）を行う際の「パスワード代わり」として使われる文字列です。

::: note 
このPATは3.3の手順3で使用します
:::
### 発行方法
1\. [GitHub](https://github.co.jp/)にログイン
2\. 右上のアイコン > Settings
3\. 左のメニュー下部のDeveloper settings > Personal access tokens > Tokens(classic) > Generate new token (classic)
4\. 必須情報を入力
    - Note（説明）：例）ServiceNow-link
    - Expiration（有効期限）：例）90日
    
::: note
セキュリティの観点から有効期限を設定する
有効期限が切れると新しいトークンを発行する必要あり
:::
    - Scopes（権限）：repoにチェックを入れる
5\. Generate tokenを押し，発行されたトークンをコピーして保存

::: note alert
トークンは一度しか表示されないので注意
:::


## 3\.3 アプリケーションとの紐づけ
3.2までで紐づけの準備が整いました，ここでは連携方法を詳しく説明していきます．

1\. メインのServiceNowブラウザに戻りAll > Connections & Credentials > Credentials
2\. NewをクリックしBasic Auth Credentialsを選択
3\. 以下の項目を入力しsubmitをクリック
- 入力項目
    - Name：GitHub
    - User name：各自のGitHubユーザネーム
    - Password：3.2で発行したトークン
    - Active：チェック
![basic.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3941957/4f880ef1-6a1b-4abc-adec-5e970c9d20ac.png)

4\. All > System Applications > Studio
5\. Sellect Applicationから対象アプリを開く

![s-app.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3941957/eef82db1-e098-466b-8e59-97d44f47fa11.png)

6\. 左上のタブからSource Control > Link to Source Control
7\. 以下の情報を入力しLink To Source Controlをクリック
- Network Protocol：https
- URL：3.1で発行したURL
- Credential：GitHub（手順3で設定したName）
- Branch：master

![link.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3941957/554559af-6cf4-4037-92ed-12220297649b.png)

# 4\. コミットの方法
Gitで変更内容を保存することをコミットといいます．最後にコミットの方法について説明します．

1\.ServiceNow Studioタブに戻して左上のSource Control > Commit Changesを開く．
2\. Continueを選択
3\. コミットコメントを追加（内容は任意）
4\. Commit Filesボタンをクリック



# 5\. おわりに
いかがでしたでしょうか？
ServiceNowとGitHubの連携によって，ソースコード管理やバージョン管理がよりスムーズになります．本記事を参考に，ご自身の開発環境でも連携を試してみてください．特にチーム開発ではGitHubとの統合は効率化に大きく貢献します．

# 6\. 参考文献
PATについて詳しくまとめている記事はこちら
↓↓↓
[GitHubで個人アクセストークンを発行する方法](https://qiita.com/RyutoYoda/items/c6908025c0aef4b35cdd)