Manpages

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