
\begin{DoxyItemize}
\item infos = Information about the gitresolver plugin is in keys below
\item infos/author = Thomas Waser \href{mailto:thomas.waser@libelektra.org}{\tt thomas.\+waser@libelektra.\+org}
\item infos/licence = B\+SD
\item infos/needs =
\item infos/provides = resolver
\item infos/recommends =
\item infos/placements = rollback getresolver setresolver commit
\item infos/status = recommended productive reviewed conformant compatible coverage specific shelltest tested libc configurable final preview nodoc
\item infos/metadata =
\item infos/description = resolver for git repositories
\end{DoxyItemize}

gitresolver is a resolver that fetches from a local git repository during the get-\/phase and commits them back at the end of the set-\/phase. It operates on a temporary copy of the latest version of your file fetched from the repository. If the temporary copy modified, a new commit with the modified version will be created. Local files won\textquotesingle{}t be touched.

{\ttfamily branch} defines the branch to work on. Default\+: master {\ttfamily tracking} can be either {\ttfamily object} or {\ttfamily head} (default). if set to {\ttfamily object} a conflict will only occur if the file in the git repository has been updated while you were working on it. {\ttfamily head} will cause a conflict if the {\ttfamily H\+E\+AD} commit has been updated. {\ttfamily pull} when present\+: tells the plugin to fast-\/forward pull the repository, fails if FF isn\textquotesingle{}t possible. {\ttfamily checkout} when present\+: tells the plugin to checkout the file.

Currently it only works inside existing git repositories.


\begin{DoxyCode}
kdb mount -R gitresolver /path/to/my/gitrepo/file.ini system/gittest ini shell \(\backslash\)
    execute/set='cd /path/to/my/gitrepo/ && git commit --amend'
\end{DoxyCode}
 