Skip to content

yukicoder.toml を廃止し、ルートの目印を .git にする - #10

Merged
yuki2006 merged 2 commits into
mainfrom
no-config
Sep 5, 2026
Merged

yuki2006 merged 2 commits into
mainfrom
no-config

Conversation

@yuki2006

@yuki2006 yuki2006 commented Sep 5, 2026

Copy link
Copy Markdown
Owner

変更内容

設定ファイルが持っていた 2 項目は、もはや設定である必要がありませんでした。

  • problems_dirproblems/ に固定 (workflow のトリガーは元から problems/** をハードコードしており、「設定を変えたら workflow も直すこと」という歪みも一緒に消えます)
  • base_url本番固定 (単一サーバ方針の帰結)

ルートの決め方は「上に辿って見つけた .git のある場所、無ければカレントディレクトリ (その旨を表示)」です。worktree / submodule の .git ファイルにも対応しています。

  • pull を最初の 1 コマンドとしてどこでも使えるようになり、「リポジトリの初期化」という概念が消えました (new は骨組み作成と --dir のためのコマンドに)
  • workflow から problems_dir を sed で読む処理・yukicoder.toml のパストリガーを削除
  • リポジトリ直下の yukicoder.toml も削除
  • ついでの修正: display_path.. 込みの相対パスを組めるようにしました。サブディレクトリから実行したとき、ルート側のパスが絶対パスで表示される潜在バグがあった (絶対パスを出さない方針に反する) ためです

このブランチは PR #9 (init の new への統合) の上に積んであります。これだけマージすれば #8#9 の分も入ります。

実測

  • ツールリポジトリの problems/13954/ の中から pull 13954.git からルートを特定し、表示は . / statement.md (絶対パスなし)
  • Git リポジトリの深いサブディレクトリから new 13954 → ルート直下の problems/13954/ に作成、表示は ../problems/13954 形式
  • Git 管理外のディレクトリで pull 13954 → 「カレントディレクトリをルートとして扱います (.git が見つかりません)」を表示して動作

単体テスト 54 件 (.git 探索・相対パス表示の回帰テストを含む)、clippy -D warnings / fmt 通過。

🤖 Generated with Claude Code

https://claude.ai/code/session_01GDSDbQcqbZqhXQ1dVo9BeE

yuki2006 and others added 2 commits September 5, 2026 09:48
設定ファイルが持っていた 2 項目は設定である必要が無くなった:
- problems_dir は problems/ に固定 (workflow のトリガーも元から固定だった)
- base_url は本番固定 (単一サーバ方針の帰結)

ルートは上に辿って見つけた .git のある場所 (worktree の .git ファイルも可)。
Git 管理外ではカレントディレクトリをルートとして扱い、その旨を表示する。
これで pull を最初の 1 コマンドとして使え、「リポジトリの初期化」という
概念が消える。workflow から problems_dir を sed で読む処理も削除。

あわせて display_path を .. 込みの相対パスに対応させた。サブディレクトリ
から実行したとき、ルート側のパスが絶対パスで表示されていた。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Windows 形式 (バックスラッシュ・ドライブ文字) の直書きは Linux では区切りに
ならず、CI で落ちた。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@yuki2006
yuki2006 merged commit f616c73 into main Sep 5, 2026
1 check passed
@yuki2006
yuki2006 deleted the no-config branch September 5, 2026 00:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant