NAZWA
dpkg−mergechangelogs − trójdrożne łączenie plików debian/changelog
SKŁADNIA
dpkg−mergechangelogs [opcja...] stary nowy−a nowy−b [wynik]
OPIS
Program używa trzech dostarczonych wersji dziennika zmian Debiana do utworzenia połączonego pliku dziennika. Wynikowy dziennik zmian jest przechowywany w pliku wynik lub jest wypisywany na standardowe wyjście, jeśli nie poda się tego parametru.
Każdy wpis jest identyfikowany przez wersję (przyjmuje się, że nie są one w konflikcie) i są one w prosty sposób łączone w poprawnej kolejności (malejąco wg wersji). Jeśli użyje się −−merge−prereleases, część numeru wersji po ostatniej tyldzie jest porzucana, przez co 1.0−1~exp1 i 1.0−1~exp5 są uważane za ten sam wpis. Jeśli ta sama wersja jest dostępna zarówno w nowym−a i nowym−b, próbuje się wykonać standardowe trójdrożne połączenie wg wierszy (zakładając, że moduł Algorithm::Merge jest dostępny — jest częścią pakietu libalgorithm−merge−perl — w przeciwnym wypadku otrzyma się globalny konflikt w zawartości wpisu).
OPCJE
−m, −−merge−prereleases
Porzuca część po ostatniej tyldzie w numerze wersji przy wykonywaniu porównywania wersji, mającego pokazać czy dwa wpisy są takie same, czy nie.
Jest to przydatne, gdy używa się tego samego wpisu dziennika zmian, lecz regularnie zwiększa się jego numer wersji. Można na przykład mieć 2.3−1~exp1, 2.3−1~exp2, ... aż do oficjalnego wydania 2.3−1 i wszystkie one posiadają ten sam wpis dziennika zmian, który zmieniać się w czasie.
−−help |
Wyświetla informację o użytkowaniu i kończy działanie. |
−−version
Wyświetla informację o wersji i pomyślnie kończy działanie.
OGRANICZENIA
Anything that is not parsed by Dpkg::Changelog is lost during the merge. This might include stuff like Vim modelines, Emacs variables, comments which were not supposed to be there, etc.
INTEGRACJA Z GITEM
Aby używać tego programu do łączenia dzienników zmian Debiana z repozytorium git, konieczne jest wcześniejsze zarejestrowanie nowego sterownika łączenia w .git/conf lub ~/.gitconfig:
[merge
"dpkg−mergechangelogs"]
name = debian/changelog merge driver
driver = dpkg−mergechangelogs −m %O %A %B %A
Następnie, konieczne jest ustawienie atrybutów łączenia pliku debian/changelog albo w samym repozytorium, w pliku .gitattributes, albo w .git/info/attributes:
debian/changelog merge=dpkg−mergechangelogs
TŁUMACZE
Piotr
Roszatycki <dexter [AT] debian.org>, 1999
Bartosz Feński <fenio [AT] debian.org>, 2004-2005
Robert Luberda <robert [AT] debian.org>, 2006-2008
Wiktor Wandachowicz <siryes [AT] gmail.com>, 2008
Michał Kułach <michal.kulach [AT] gmail.com>,
2012