ROS2 C++ プロジェクト チーム開発運用マニュアル#
目次#
- リポジトリ作成・初期化
- Raspberry Pi 側でのセットアップ
- SSH鍵の生成とGitHub登録
- リモートリポジトリのクローン
- リポジトリ初期コミット
- .gitignoreの設定例
- コミット・pull・pushの基本手順
- ブランチ運用とPull Request
- トラブルシューティング
- 運用ルールまとめ
リポジトリ作成・初期化#
1.1 GitHubでリポジトリを新規作成#
- GitHubにログインし、「New repository」をクリック。
- Repository name を入力(例:
robot-control
) - 「Initialize this repository with a README」はチェックを外す(空リポジトリ推奨)
- Public / Private を選択
- 作成後、リポジトリのSSHまたはHTTPS URLを控える。
Raspberry Pi 側でのセットアップ#
2.1 Gitのインストール(初回のみ)#
sudo apt update
sudo apt install git
````
### 2.2 ユーザー情報の設定(初回のみ)
```bash
git config --global user.name "Your Name"
git config --global user.email "your_email@example.com"
SSH鍵の生成とGitHub登録#
3.1 新しいSSH鍵を作成#
3.2 公開鍵の確認とGitHub登録#
- GitHub → 右上アイコン → Settings → SSH and GPG keys → New SSH key
- Titleは自由、Key欄にコピーした公開鍵を貼り付け、「Add SSH key」
リモートリポジトリのクローン#
4.1 プロジェクトの保存先ディレクトリに移動#
4.2 クローン#
リポジトリ初期コミット#
5.1 プロジェクトファイルの配置#
(例:include
, src
, CMakeLists.txt
などをこのディレクトリ直下に配置)
5.2 .gitignoreの作成#
5.3 最初のコミットとpush#
.gitignoreの設定例#
コミット・pull・pushの基本手順#
7.1 作業前のpull(他人の更新を取得)#
7.2 ファイルの編集#
(VSCodeでリモート接続し編集推奨)
7.3 変更の確認#
7.4 変更の追加#
7.5 コミット#
7.6 push#
ブランチ運用とPull Request#
8.1 新規ブランチの作成#
8.2 変更内容のpush#
8.3 Pull Requestの作成#
- GitHubでリポジトリページを開く
feature/xxxx
ブランチで「Compare & pull request」をクリック- レビューを受け、承認されたらmainにマージ
8.4 mainブランチの更新をpull#
トラブルシューティング#
SSHの「Permission denied (publickey)」エラーが出た場合#
- 鍵を作成し直して、**ユーザーの「SSH and GPG keys」**に再登録すること
- Deploy key(読み取り専用)に登録しないこと
「project」ディレクトリごとpushしてしまった場合#
- 必要ならGitHubのリポジトリを一度削除し、ディレクトリ直下に
include
やsrc
がある形で再pushする
SSH初回接続時の「authenticity of host」メッセージ#
- フィンガープリントがGitHub公式と一致していれば
yes
でOK
運用ルールまとめ#
- コミット・push/pullは必ずRaspberry Pi上で統一して実行
- mainブランチに直接push禁止、必ずfeatureブランチ→Pull Requestで運用
- 作業前は必ずpullして最新化
- コンフリクトが出た場合は落ち着いて
git status
/git diff
で内容を確認し、修正すること - .gitignoreを守り、ビルド生成物や不要ファイルはリポジトリに含めない
- README.md等にセットアップ手順、ルール、トラブル事例を随時追記する
よく使うGitコマンドまとめ#
コマンド | 意味 |
---|---|
git pull origin main | リモートmainを取得して手元のmainに反映 |
git checkout -b feature/xxx | 新しいブランチを作ってそのまま切り替え |
git add . | 変更した全てのファイルを追加 |
git commit -m "コメント" | 追加分をコミット(コメントは必ずつける) |
git push origin feature/xxx | 今のブランチをリモートへアップロード |
git checkout main | mainブランチに戻る |
git branch | 今存在するブランチ一覧を表示 |
git status | 今の変更状況を確認 |