.. -*- coding: utf-8 -*- .. role:: sref(numref) .. role:: xref(numref) .. Copyright (C) 2020, Dominik Appold, .. This file is part of Documentation Standard. .. Permission is granted to copy, distribute and/or modify this document .. under the terms of the GNU Free Documentation License, Version 1.3 .. or any later version published by the Free Software Foundation; .. with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. .. A copy of the license is included in the section entitled "GNU .. Free Documentation License". .. inline comments (with du_comment_role) .. role:: rem(comment) .. role:: html(raw) :format: html .. role:: shx(code) :language: sh .. rst-class:: xnarrow xmedium large xhuge xultra ################################################## :rem:`|||:sec:|||`\ Version Control System ################################################## .. >>CODD See `the components of a doctoral dissertation and their order `_ .. >>CODD Dedication .. >>CODD Epigraph .. >>CODD Abstract .. compound:: A version control system directly affects the synchronization effort :math:`E_{sync}`. .. \|:here:| .. >>CODD Introduction .. >>CODD Chapter ================================================== :rem:`|||:sec:|||`\ Cherry-Picking ================================================== -------------------------------------------------- :rem:`||:sec:||`\ Mercurial -------------------------------------------------- .. code-block:: sh cd repo hg export --git -r REV >000-patch.dif hg export --git -r 685 >000-patch.dif ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :rem:`|:sec:|`\ Adding additional changes to the patch ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #. clone repository .. code-block:: sh cd .. hg clone $( pwd )/repo repo-cherry #. import the patch .. code-block:: sh cd repo-cherry hg import ../repo/000-patch.dif #. modify sources #. create new patch .. code-block:: sh sed '1,/^$/p;d' ../repo/000-patch.dif >../repo/001-patch.dif hg diff --git -r -2 >>../repo/001-patch.dif #. re-create clone, apply final patch .. code-block:: sh cd .. rm -rf repo-cherry hg clone $( pwd )/repo repo-cherry cd repo-cherry hg import ../repo/001-patch.dif After testing, the pacth :file:`001-patch.dif` can be applied to the clean master repository. .. note:: If an import fails, added files are created, but not added to the repository. This must be done manually. -------------------------------------------------- :rem:`||:sec:||`\ Git -------------------------------------------------- |:todo:| git cherry-picking .. >>CODD Conclusion .. >>CODD Appendix A .. \|:here:| .. >>CODD Notes .. ================================================== .. :rem:`|||:sec:|||`\ Footnotes .. ================================================== :html:`
` .. \[#] .. include:: doc_defs.inc .. include:: abbrev_defs.inc .. include:: doc_defs_combined.inc .. .. \||<-snap->|| doc_standalone .. include:: doc/doc_defs_secret.inc .. \||<-snap->|| doc_standalone .. \||<-snap->|| not_doc_standalone .. include:: doc_defs_secret.inc .. \||<-snap->|| not_doc_standalone .. _`Dominik Appold`: dominikappold@gmx.de