Se si desidera utilizzare solo la versione modificata in grado localmente, puoi seguire la procedura di Arthur fino al passaggio "Prova il mio programma". Questo va bene se si sta lavorando su un'applicazione che verrà assemblata insieme alle sue dipendenze per l'implementazione (con lein uberjar
, ad esempio). Si potrebbe anche voler usare la funzione di checkout di Leiningen per lavorare sul progetto principale e la libreria modificata in parallelo (documentata in Leiningen's tutorial - collegamento alla versione dalla versione 2.2.0 corrente).
Se si desidera che la versione modificata sia accessibile in un repository Maven pubblico, la cosa accettata da fare (in effetti, incoraggiata per questo caso d'uso specifico e nient'altro) è di rilasciare una versione del progetto con l'id originale del manufatto e un ID di gruppo di org.clojars.{your-clojars-account-name}
.
Ad esempio, se si voleva liberare la propria versione di progetto foo
con (defproject foo "upstream-version" ...)
nella sua project.clj
, devi cambiare la sua forma defproject
-(defproject org.clojars.kendallb/foo "your-version" ...)
prima del rilascio. Quindi potresti dipendere da [org.clojars.kendallb/foo "your-version"]
nei tuoi progetti.
In questo modo non ci sarà alcun conflitto con l'id originale del manufatto o con qualsiasi altro fork.
Per quanto riguarda il passaggio delle modifiche a monte, il processo di Arthur è perfettamente ragionevole.
fonte
2013-07-05 23:54:11
Ho scelto questa risposta perché includeva le istruzioni per ottenere la patch fino alla produzione. Grazie! – KendallB