Difference between revisions of "Commit Guidelines"

Jump to navigation Jump to search
4,574 bytes removed ,  07:21, 29 April 2016
(add some actual commit guidelines, rearrange a little)
(2 intermediate revisions by 2 users not shown)
Line 6: Line 6:


If you change shared common code, then (while not necessarily in the same commit, due to the above guideline!) you should also make at least a best-effort attempt to make sure all of the engine/backend code stays working.
If you change shared common code, then (while not necessarily in the same commit, due to the above guideline!) you should also make at least a best-effort attempt to make sure all of the engine/backend code stays working.
Assure that ScummVM compiles with every commit. In case of regressions, this helps to track down the commit introducing the regression.


== Commit message formatting ==
== Commit message formatting ==
Line 88: Line 90:
* Avoid committing style or whitespace fixes and functionality fixes in one go. It makes merging difficult, and also makes it harder to understand just what functional changes were made. In the case of documentation files, it can make the job of the translation teams more complicated, as it becomes difficult for them to determine exactly what content changes need to be translated.
* Avoid committing style or whitespace fixes and functionality fixes in one go. It makes merging difficult, and also makes it harder to understand just what functional changes were made. In the case of documentation files, it can make the job of the translation teams more complicated, as it becomes difficult for them to determine exactly what content changes need to be translated.
* Avoid committing changes to multiple files in one go with a generic, vague message. Instead, commit each file (or small, related groups of files) with tailored commit messages.
* Avoid committing changes to multiple files in one go with a generic, vague message. Instead, commit each file (or small, related groups of files) with tailored commit messages.
== Autoprops for subversion ==
Insert these in ~/.subversion/config
<syntax type="apache">
# Graphic file formats, usually binary:
*.bmp = svn:mime-type=image/bmp
*.gif = svn:mime-type=image/gif
*.ico = svn:mime-type=image/x-icon
*.jpeg = svn:mime-type=image/jpeg
*.jpg = svn:mime-type=image/jpeg
*.pdf = svn:mime-type=application/pdf
*.png = svn:mime-type=image/png
*.tiff = svn:mime-type=image/tiff
*.psd = svn:mime-type=image/x-photoshop
# Text / documentation files
*.rtf = svn:mime-type=text/rtf;svn:eol-style=native
*.tex = svn:mime-type=text/plain;svn:eol-style=native
README* = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
INSTALL = svn:mime-type=text/plain;svn:eol-style=native
COPY* = svn:mime-type=text/plain;svn:eol-style=native
HISTORY = svn:mime-type=text/plain;svn:eol-style=native
*.1 = svn:mime-type=text/plain;svn:eol-style=native
*.pc = svn:mime-type=text/plain;svn:eol-style=native
CHANGELOG = svn:mime-type=text/plain;svn:eol-style=native
FILEFORMAT = svn:mime-type=text/plain;svn:eol-style=native
THANKS = svn:mime-type=text/plain;svn:eol-style=native
luac = svn:mime-type=text/plain;svn:eol-style=native
# Project / build files
*.bat = svn:mime-type=text/plain;svn:eol-style=native
*.mak = svn:mime-type=text/plain;svn:eol-style=native
*.mk = svn:mime-type=text/plain;svn:eol-style=native
*.dsp = svn:mime-type=text/plain;svn:eol-style=CRLF
*.dsw = svn:mime-type=text/plain;svn:eol-style=CRLF
Makefile* = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
project.pbxproj = svn:mime-type=text/xml;svn:eol-style=native
# Source code (keyword expansion enabled by default)
*.c = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.cpp = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.css = svn:mime-type=text/css;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.gap = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.h = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.hpp = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.htm = svn:mime-type=text/html;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.html = svn:mime-type=text/html;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.m = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.mm = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.php = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.inc = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.csv = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.js = svn:mime-type=text/javascript;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.tpl = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.po = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.pot = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
POTFILES = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.sed = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
po2c = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id;svn:executable=1
*.bdf = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.vcproj = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.sln = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.bat = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
*.lua = svn:mime-type=text/plain;svn:eol-style=native;svn:keywords=Date Rev Author URL Id
# Various resource file formats
*.rc = svn:mime-type=text/plain;svn:eol-style=native
*.sh = svn:mime-type=text/plain;svn:eol-style=native;svn:executable
*.spec = svn:mime-type=text/plain;svn:eol-style=native
*.strings = svn:mime-type=text/plain;svn:eol-style=native
*.txt = svn:mime-type=text/plain;svn:eol-style=native
*.xhtml = svn:mime-type=application/xhtml+xml;svn:eol-style=native
*.xml = svn:mime-type=text/xml;svn:eol-style=native
*.xsl = svn:mime-type=text/xml;svn:eol-style=native
classes.nib = svn:mime-type=text/plain;svn:eol-style=native
info.nib = svn:mime-type=text/plain;svn:eol-style=native
objects.nib = svn:mime-type=application/octet-stream
keyedobjects.nib = svn:mime-type=application/octet-stream
*.fcc = svn:mime-type=application/octet-stream
</syntax>
81

edits

Navigation menu