私はClojarsでホストされているleiningenプロジェクトでライブラリを使用しています。私はバグに遭う。私はGithubでプロジェクトをフォークし、バグを修正します。それで?パッチライブラリClojarsから
私のleiningenプロジェクトで私のバージョンのライブラリを使用する最も適切な方法は何ですか?
P.S.私は、Rubyの世界から来ているので、私は明らかに心にバンドラーを持っている...
私はClojarsでホストされているleiningenプロジェクトでライブラリを使用しています。私はバグに遭う。私はGithubでプロジェクトをフォークし、バグを修正します。それで?パッチライブラリClojarsから
私のleiningenプロジェクトで私のバージョンのライブラリを使用する最も適切な方法は何ですか?
P.S.私は、Rubyの世界から来ているので、私は明らかに心にバンドラーを持っている...
変更されたバージョンのavailあなたはArthurのプロセスを「自分のプログラムをテストする」ステップに従うことができます。これは、デプロイメントの依存関係とともにパッケージ化するアプリケーション(例えば、lein uberjar
と言う)で作業している場合は問題ありません。 Leiningenのチェックアウト機能を使用して、メインプロジェクトと修正されたライブラリを並行して作業することもできます(Leiningen's tutorialで文書化 - 現在の2.2.0リリースからのバージョンへのリンク)。
パブリックMavenリポジトリでアクセスできるようにするには、受け入れられたことです(実際には、この特定のユースケースでは奨励されています)。元のアーティファクトIDグループIDはorg.clojars.{your-clojars-account-name}
です。例えば
あなたはそのproject.clj
に(defproject foo "upstream-version" ...)
でプロジェクトfoo
の独自のバージョンをリリースしたい場合、あなたはリリース前に(defproject org.clojars.kendallb/foo "your-version" ...)
にそのdefproject
フォームを変更したいです。あなたはあなたのプロジェクトの[org.clojars.kendallb/foo "your-version"]
に依存することができます。
この方法では、元のアーティファクトIDまたは他のフォークと競合することはありません。
あなたの変更を上流にマージするために、アーサーのプロセスは完全に合理的です。
私のプロセス:
あなたがバグを修正するために掘り下げているときに、プロジェクトにたくさんの "スタイルフィックス"を適用しようとしているのですが、をに入れてみてくださいそれは長距離のためであり、コードにもっと感情的に投資されます。
私はこの回答を、プロダクションに至るまでパッチを入手するための指示が含まれていたから選択しました。ありがとう! – KendallB