Are the revision settings on a content type respected when the content is changed programatically? I want to practice making some bulk updates via code, but I also want the option of reverting back to an earlier versions in case some of the changes are incorrect.

Are the revision settings respected when revisioning by default is enabled for a content type?
No, not by default, if you're using node_load() &amp; node_save(), without any other code, it will not retrieve the content type's revision setting. For example:

$my_node = node_load(123);
$my_node-&gt;title = 'new title';
node_save($my_node);


node_save() uses the $my_node-&gt;revision property to determine if it's creating a new revision. In the above example, $my_node will not have the revision flag set from a node_load() retrieval. 

If you manually set the $my_node-&gt;revision to TRUE it will do this:

$my_node = node_load(123);
$my_node-&gt;revision = TRUE;
$my_node-&gt;title = 'new title';
node_save($my_node);