| % SVN quick reference card, (C) 2002 Ben Collins-Sussman <sussman@red-bean.com> |
| % |
| % Based on a CVS quickref card by Jim Blandy <jimb@red-bean.com> |
| |
| \documentclass{report} |
| \topmargin -0.8in |
| \pagestyle{empty} |
| |
| \textheight=10in |
| \oddsidemargin=0in |
| \newcommand{\s}{\tt /} |
| |
| \begin{document} |
| |
| \hspace{-0.7in} |
| \begin{tabular}{ll} |
| \vspace{0.1in} \hspace{-0.1in}{\bf\LARGE SVN Quick Reference} |
| & \\ \\ |
| |
| %------------------------------------------------------------------------- |
| \vspace{0.1in} \hspace{-0.1in}{\bf\Large Getting Help} |
| & \\ |
| |
| {\tt svn help} & |
| get list of subcommands \\ |
| |
| {\tt svn help} {\sl subcommand} & |
| get help on {\sl subcommand} \\ |
| |
| |
| %------------------------------------------------------------------------- |
| \\ |
| \\ |
| \vspace{0.1in} \hspace{-0.1in}{\bf\Large Working Copies} & |
| (If {\sl [targets\dots]} are omitted, SVN assumes `{\tt .}') \\ |
| |
| {\tt svn checkout} {\sl [flags]} {\sl URL}\dots & |
| create a new working directory \\ |
| |
| \hspace{0.5in}{\tt -r} {\sl N} & |
| check out revision {\sl N} of {\sl URL} \\ |
| \hspace{0.5in}{\tt -d} {\sl dest} & |
| place working copy in new directory {\sl dest} \\ |
| |
| \\ |
| {\tt svn update} {\sl [flags]} {\sl [targets\dots]} & |
| merge repository changes into working {\sl targets} \\ |
| |
| \hspace{0.5in}{\tt -r} {\sl N} & |
| update to revision {\sl N} \\ |
| |
| \\ |
| {\tt svn commit} {\sl [flags]} {\sl [targets\dots]} & |
| check local changes into the repository \\ |
| |
| \hspace{0.5in}{\tt -m} {\sl message} & |
| Use {\sl message} as change's log entry \\ |
| |
| \hspace{0.5in}{\tt -F} {\sl logfile} & |
| Use contents of {\sl logfile} as change's log entry \\ |
| |
| \\ |
| {\tt svn add} {\sl [flags]} {\sl targets\dots} & |
| schedule {\sl targets} for addition \\ |
| |
| \hspace{0.5in}{\tt --recursive} & |
| add a target directory recursively \\ |
| |
| \\ |
| {\tt svn rm} {\sl [flags]} {\sl paths} \verb!|! {\sl URLs\dots} & |
| schedule working-copy {\sl paths} for removal, |
| or immediately delete {\sl URLs} \\ |
| |
| \\ |
| {\tt svn import} {\sl URL} {\sl path} {\sl new-entry} & |
| recursively commit {\sl path} to {\sl new-entry} within {\sl URL} \\ |
| |
| %------------------------------------------------------------------------- |
| \\ |
| \\ |
| \vspace{0.1in} \hspace{-0.1in}{\bf\Large Working Copy Maintenance} \\ |
| |
| {\tt svn status} {\sl [flags]} {\sl [targets\dots]} & |
| recursively show local changes in {\sl targets} \\ |
| |
| \hspace{0.5in}{\tt -v} & |
| show verbose information \\ |
| |
| \hspace{0.5in}{\tt -u} & |
| show out-of-dateness information from repository \\ |
| |
| \\ |
| {\tt svn info} {\sl [targets\dots]} & |
| show tracked information on {\sl targets} \\ |
| |
| \\ |
| {\tt svn revert} {\sl [targets\dots]} & |
| revert {\sl targets} to ``pristine'' state \\ |
| |
| \\ |
| {\tt svn resolve} {\sl [targets\dots]} & |
| removes conflict files associated with conflicted {\sl targets} \\ |
| |
| \\ |
| {\tt svn cleanup} {\sl [targets\dots]} & |
| unlock and resume unfinished operations on {\sl targets} \\ |
| |
| |
| %------------------------------------------------------------------------- |
| \\ |
| \\ |
| \vspace{0.1in} \hspace{-0.1in}{\bf\Large Metadata} \\ |
| |
| {\tt svn proplist} {\sl [flags]} {\sl targets\dots} & |
| view property names attached to {\sl targets} \\ |
| |
| \hspace{0.5in}{\tt -v} & |
| show property values as well \\ |
| |
| \\ |
| {\tt svn propget} {\sl propname} {\sl targets\dots} & |
| print value of {\sl propname} attached to {\sl targets} \\ |
| |
| \\ |
| {\tt svn propset} {\sl propname} {\sl propval} {\sl targets\dots} & |
| set {\sl propname} to {\sl propval} on {\sl targets} \\ |
| |
| \hspace{0.5in}{\tt -F} {\sl file} & |
| take property value from {\sl file} \\ |
| |
| \\ |
| {\tt svn propdel} {\sl propname} {\sl targets\dots} & |
| remove {\sl propname} from {\sl targets} \\ |
| |
| \\ |
| {\tt svn propedit} {\sl propname} {\sl targets\dots} & |
| edit value of {\sl propname} attached to {\sl targets} \\ |
| |
| %------------------------------------------------------------------------- |
| |
| % someday we shouldn't manually make a pagebreak with new table; |
| % instead, we should use one of latex's new ``longtable'' objects, |
| % which actually knows how to create new pages automatically. |
| |
| \end{tabular} |
| |
| \newpage |
| \hspace{-0.7in} |
| \begin{tabular}{ll} |
| |
| %------------------------------------------------------------------------- |
| \\ |
| \\ |
| \vspace{0.1in} \hspace{-0.1in}{\bf\Large Examining History} & \\ |
| |
| {\tt svn diff} {\sl [flags]} {\sl [target\dots]} & |
| show local changes made in {\sl target} \\ |
| |
| \hspace{0.5in}{\tt -r} {\sl N} & |
| compare with revision {\sl N} of {\sl target} \\ |
| |
| \hspace{0.5in}{\tt -r} {\sl N:M} & |
| compare revisions {\sl N} and {\sl M} of {\sl target} \\ |
| |
| \\ |
| {\tt svn diff} {\sl URL1@N} {\sl URL2@M} & |
| compare two server paths at revisions {\sl N} and {\sl M} \\ |
| |
| \\ |
| {\tt svn log} {\sl [flags]} {\sl targets} & |
| show log entries for {\sl targets} \\ |
| |
| \hspace{0.5in}{\tt -r} {\sl N[:M]} & |
| show log entry for revision {\sl N} or range {\sl N:M} \\ |
| |
| %------------------------------------------------------------------------- |
| \\ |
| \\ |
| \vspace{0.1in} \hspace{-0.1in}{\bf\Large Branches and Tags} & \\ |
| |
| {\tt svn cp} {\sl SRC} {\sl DST} & |
| copy a working-copy path (or URL) to another working-copy path (or URL) \\ |
| |
| \hspace{0.5in}{\tt WC => WC} & |
| copy and schedule for addition (with history) \\ |
| |
| \hspace{0.5in}{\tt WC => URL} & |
| immediately commit a copy of WC to URL \\ |
| |
| \hspace{0.5in}{\tt URL => WC} & |
| check out URL into WC, schedule for addition \\ |
| |
| \hspace{0.5in}{\tt URL => URL} & |
| complete server-side copy; used to branch and tag \\ |
| |
| \\ |
| {\tt svn mv} {\sl SRC} {\sl DST} & |
| move a path within a working-copy or repository. \\ |
| |
| \hspace{0.5in}{\tt WC => WC} & |
| move and schedule for addition (with history) \\ |
| |
| \hspace{0.5in}{\tt URL => URL} & |
| complete server-side rename. \\ |
| |
| \\ |
| {\tt svn switch} {\sl target} {\sl URL} & |
| transform working copy {\sl target} into {\sl URL}; used to 'move' to |
| a tag or branch location \\ |
| |
| \\ |
| {\tt svn merge} {\sl path1@N} {\sl path2@M} {\sl wcpath} & |
| compare wcpaths (or URLs) {\sl path1} and {\sl path2}, and merge differences |
| into {\sl wcpath} \\ |
| |
| \\ |
| {\tt svn mkdir} {\sl target} & |
| immediately create working-copy or URL directory {\sl target} \\ |
| \\ |
| %------------------------------------------------------------------------- |
| \\ |
| \\ |
| \vspace{0.1in} \hspace{-0.1in}{\bf\Large File Status Flags} & |
| (as printed by {\tt svn update/switch/merge}) \\ |
| |
| {\tt U} {\sl filename} & |
| item (U)pdated to repository version \\ |
| |
| {\tt G} {\sl filename} & |
| item's local changes were mer(G)ed with repository changes \\ |
| |
| {\tt C} {\sl filename} & |
| item's local changes (C)onflicted with repository changes \\ |
| |
| {\tt D} {\sl filename} & |
| item (D)eleted from working copy \\ |
| |
| {\tt A} {\sl filename} & |
| item (A)dded to working copy \\ |
| |
| \end{tabular} |
| |
| \end{document} |
| |
| |