pannman commited on
Commit
f35c522
·
1 Parent(s): c0fe430

update README

Browse files
Files changed (1) hide show
  1. README.md +157 -10
README.md CHANGED
@@ -1,29 +1,176 @@
1
  # Almondo-PoC-Template
2
 
3
- PoC 用のテンプレートリポジトリ
 
 
 
4
 
5
  ## セットアップ
6
-
7
- ### 前提
8
 
9
  - docker のインストール
10
 
11
- ### セットアップ手順
12
-
13
- 1. .env.dev を作成する
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
 
 
 
15
  ```bash
 
 
 
 
 
16
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
  ```
18
 
19
- 2. コンテナを起動する
 
20
 
 
 
 
 
21
  ```bash
22
- docker-compose run development bash
 
 
 
 
 
23
  ```
24
 
25
- 3. poetry でパッケージをインストールする
26
 
27
  ```bash
28
- poetry install
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  ```
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  # Almondo-PoC-Template
2
 
3
+ PoC 用のテンプレートリポジトリです。
4
+ 本READMEは以下の構成で作成されています。
5
+ 1. セットアップ
6
+ 2. ディレクトリ構造
7
 
8
  ## セットアップ
9
+ ------------------
10
+ #### 前提
11
 
12
  - docker のインストール
13
 
14
+ #### セットアップ手順
15
+ 1. git cloneを行う
16
+ * 本リポジトリの右上にあるCodeボタンからリポジトリのurlを取得
17
+ ```bash
18
+ git clone [repositry url]
19
+ ```
20
+ 2. デフォルトブランチの確認
21
+ * develop ブランチになっているかどうか
22
+ ```bash
23
+ git branch
24
+ ```
25
+ * 以下のようにdevelopに印がついていたら問題ない
26
+ ```bash
27
+ * develop
28
+ main
29
+ ```
30
+ 3. .env.dev を作成する
31
+ * env.dev.templeteがあるので,それを複製して作成する
32
 
33
+ 4. コンテナを起動する
34
+ * 初回のみbuildが実行される
35
  ```bash
36
+ docker-compose run development bash
37
+ ```
38
+
39
+ 5. poetry でパッケージをインストールする
40
+ * 以下のコードにてdocker container上に必要なパッケージがインストールされる。
41
 
42
+ ```
43
+ poetry install
44
+ ```
45
+ #### dockerの基本操作
46
+ 起動中のコンテナの確認
47
+ ```
48
+ docker ps
49
+ ```
50
+ 起動中のコンテナに入る
51
+ ```
52
+ docker exec -it [container id] bash
53
+ ```
54
+ 起動中のコンテナを落とす
55
+ ```
56
+ docker-compose down
57
+ ```
58
+ #### パッケージの追加削除
59
+ パッケージの追加
60
+ * パッケージ名にバージョンを指定することで,バージョンのアップグレード及びダウングレードができます
61
+ ```
62
+ poetry add [パッケージ名]
63
+ ```
64
+ パッケージの削除
65
+ ```
66
+ poetry remove [パッケージ名]
67
+ ```
68
+
69
+ #### VScode上での作業
70
+
71
+
72
+
73
+ ## 開発の手順
74
+ Issue driven開発手法での開発をしていただきます。
75
+ 詳細は以下ページに記載してあります
76
+ - Issue driven運用のドキュメント
77
+ https://www.notion.so/Issue-driven-5378336f66c243f7933b52a15ce15ee7?p=9b275fa3a5e841eea11133f900a80499&pm=s
78
+
79
+ Issue driven開発の大まかな手順は以下の8つです.
80
+
81
+ 1. **Issueを作成**
82
+ - 本ページの画面上部にあるIssuesから作成してください
83
+ 2. **ブランチを切る**
84
+ - brach名は以下の2つの規則に従ってください
85
+ - feature/~~~~~
86
+ - 新規機能の追加などの際に使用するブランチ
87
+ - fix/~~~~~
88
+ - 様々な改修や、バグ修正を行うブランチ
89
+ 3. **2で切ったブランチで作業**
90
+ ```
91
+ git fetch origin
92
+ git checkout branch名
93
  ```
94
 
95
+ 1. **作業内容をpush**
96
+ 変更内容をaddする前に,必ず以下のコマンドを実行し,最新のmainブランチの内容を反映させてください.
97
 
98
+ ※最新のmainの内容が反映されていない場合,プルリクエストをマージする際にコンフリクトが発生する可能性があります.
99
+ 基本的なpushまでの流れ
100
+
101
+ addをします
102
  ```bash
103
+ git add file名
104
+ ```
105
+ commitをします
106
+
107
+ ```bash
108
+ git commit -m "commit message"
109
  ```
110
 
111
+ 最後に以下のコマンドでpushをします.
112
 
113
  ```bash
114
+ git push
115
+ ```
116
+ 1. **プルリクエストの作成**
117
+ 本画面の上部に「Compare & pull request」と表示されるのでそれをクリックしてプルリクエストを作成してください
118
+ 2. **プルリクエストをレビュー(レビュワーが担当)**
119
+ 作成されたPRからPjMがレビューを行います
120
+ 3. **mainブランチにマージをして,作業ブランチを削除する**
121
+   レビュー内容を確認し問題がなければ,developブランチにマージをして作業ブランチを削除してください
122
+
123
+
124
+ ## ディレクトリ構造
125
+ ------------------
126
+ 主なディレクトリ構造
127
+ ```
128
+ root/
129
+ ├── .github/
130
+ │ └── workflows/ # CI/CDワークフロー定義
131
+ │ └── pysen-python-app.yaml # データモデル
132
+ ├── data/ # プロジェクトドキュメント
133
+ │ ├── models/ # データモデル
134
+ │ ├── preprocessed/ # ビジネスロジック
135
+ │ └── raw/ # ユーティリティ関数
136
+ │ └── results/
137
+ ├── work/ # ソースコード
138
+ │ ├── example/ # データモデル
139
+ │ ├── experiments/ # ビジネスロジック
140
+ │ └── src/ # ユーティリティ関数
141
+ │ └── tests/ # ユーティリティ関数
142
+ ├── .env.dev.template # 開発環境変数テンプレート
143
+ ├── .gitignore # Gitが無視するファイル設定
144
+ ├── Dockerfile # Dockerイメージ定義
145
+ ├── README.md # プロジェクト説明(本ファイル)
146
+ ├── docker-compose.yml # Docker Compose設定
147
+ ├── entrypoint.sh # Docker Compose設定
148
+ ├── poetry.lock # Poetryプロジェクト設定
149
+ ├── pyproject.toml # Poetryプロジェクト設定
150
+ └── LICENSE # ライセンス情報
151
  ```
152
+ ### work
153
+ #### exmaple
154
+ - 先方にコードの実行例を見せるときやデモ等の共有の際に必要な綺麗なコードをまとめる場所
155
+ - spacesのデモ等
156
+ #### experiments
157
+ - 実行コード置き場
158
+ - 基本的な実験的なコードはここに置く
159
+ - 種々の実験はここで行う
160
+ - promptのようなプロジェクトに依存するものはこちら
161
+ #### src
162
+ - プロジェクトごとに使いまわせるようなやつプロジェクトに依存しない基本クラス
163
+ - クラス化されたsrc code 置き場
164
+ - 各コードに共通する基本クラスはここ
165
+ #### tests
166
+ * 単体テストを置くフォルダ
167
+ ### dataフォルダ
168
+ githubには上がらないようになっていますが以下の構成で分けてください
169
+ #### model
170
+ (モデル保存場所、tuningしたpthファイルなど)
171
+ #### preprocessed
172
+ (前処理済みデータ,csvやtextファイルなど)
173
+ #### raw
174
+ 生データ保管場所(先方から提供されたexcelファイルなど)
175
+ #### results
176
+ (結果保存場所、各タスクごとの出力結果保存)