





























{"authors":[{"name":"Tom Sartain","url":"https://blog.ummwhat.com/"}],"feed_url":"https://blog.ummwhat.com/feed.json","home_page_url":"https://blog.ummwhat.com/","items":[{"content_html":"\u003cp\u003e\u003ca href=\"https://www.quarter--mile.com/Things-That-Are-Good-to-Do\"\u003eThings That Are Good To Do\u003c/a\u003e\u003c/p\u003e\n\n\u003cp\u003eA fantastic list of things that are Good To Do™.\u003c/p\u003e\n\n\u003cp\u003e\u003cspan class=\"entry-via\"\u003evia \u003ca href=\"https://ericmaierson.substack.com/p/week-of-october-5-2026\"\u003eEric Maierson\u003c/a\u003e, via \u003ca href=\"https://kottke.org/26/10/0049748-things-that-are-good-to-d\"\u003eKottke\u003c/a\u003e\u003c/span\u003e\u003c/p\u003e","date_published":"2026-10-08T16:11:32-04:00","external_url":"https://www.quarter--mile.com/Things-That-Are-Good-to-Do","id":"2026-10-08-link-good","tags":[],"title":"Things That Are Good To Do","url":"https://blog.ummwhat.com/links/2026-10-08-link-good/"},{"content_html":"\n\n\u003cp\u003eExample\u003c/p\u003e\n\n","date_published":"2026-10-08T10:43:48-04:00","id":"2026-10-08-example","tags":[],"url":"https://blog.ummwhat.com/notes/2026-10-08-example/"},{"content_html":"\n\n\n\n\n\u003cfigure\u003e\u003cimg class=\"u-photo\" src=\"https://blog.ummwhat.com/photos/sample-family/family.jpg\" srcset=\"https://blog.ummwhat.com/photos/sample-family/family.jpg 100w\" sizes=\"(max-width: 740px) calc(100vw - 40px), 700px\" width=\"100\" height=\"100\" alt=\"Sample family illustration\" loading=\"lazy\" decoding=\"async\"\u003e\u003c/figure\u003e\n\n\u003cp\u003eSample\u003c/p\u003e\n\n","date_published":"2026-10-01T10:30:00-04:00","id":"sample-family","image":"https://blog.ummwhat.com/photos/sample-family/family.jpg","tags":[],"url":"https://blog.ummwhat.com/photos/sample-family/"},{"content_html":"\n\n\u003cp\u003eMore for my own reference than anything else\u0026hellip;\u003c/p\u003e\n\u003cp\u003eI have an SVN repository cloned locally. I\u0026rsquo;ve made a couple of changes in order for my application to run locally and I commited those all against the \u0026ldquo;dev\u0026rdquo; branch I set up.\u003c/p\u003e\n\u003cp\u003eI then go off and do some actual work, which then needs to get sent back upstream to SVN. This is my workflow.\u003c/p\u003e\n\u003cp\u003eStarting in the dev branch, with all of my changes committed\u0026hellip;\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eBecause I should be making sure I have the newest stuff from SVN, just in case\n\n\u003cdiv class=\"code-block\"\u003e\u003cdiv class=\"code-file\"\u003ebash\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003egit svn rebase\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\n\u003c/li\u003e\n\u003cli\u003eSwitch over to the master, which should mimic SVN\n\n\u003cdiv class=\"code-block\"\u003e\u003cdiv class=\"code-file\"\u003ebash\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003egit checkout master\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\n\u003c/li\u003e\n\u003cli\u003eBring master up to date with the dev branch\n\n\u003cdiv class=\"code-block\"\u003e\u003cdiv class=\"code-file\"\u003ebash\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003egit rebase dev\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\n\u003c/li\u003e\n\u003cli\u003eRemove the commits I don\u0026rsquo;t want to push back to SVN\n\n\u003cdiv class=\"code-block\"\u003e\u003cdiv class=\"code-file\"\u003ebash\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003egit rebase -i git-svn\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\n\u003c/li\u003e\n\u003cli\u003eBecause I\u0026rsquo;m paranoid and want to make sure only the commits I want are actually coming through\n\n\u003cdiv class=\"code-block\"\u003e\u003cdiv class=\"code-file\"\u003ebash\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003egit svn dcommit --dry-run\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\n\u003c/li\u003e\n\u003cli\u003eCommit it off to SVN\n\n\u003cdiv class=\"code-block\"\u003e\u003cdiv class=\"code-file\"\u003ebash\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003egit svn dcommit\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\n\u003c/li\u003e\n\u003c/ol\u003e\n\u003chr\u003e\n\u003ch2 id=\"changing-history\"\u003eChanging History\u003c/h2\u003e\n\u003cp\u003eRevise the last 37 commits. Opens up a log in \u003ccode\u003e$EDITOR\u003c/code\u003e where you can \u0026ldquo;squash\u0026rdquo; commits together\u003c/p\u003e\n\n\u003cdiv class=\"code-block\"\u003e\u003cdiv class=\"code-file\"\u003ebash\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003egit rebase -i HEAD~37\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\n\u003cp\u003e\u0026ndash;\u003c/p\u003e\n\u003ch2 id=\"undoing-crazy-rebases\"\u003eUndoing crazy rebases\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eFind the commit you want to bring back, copy its sha1 starter\n\n\u003cdiv class=\"code-block\"\u003e\u003cdiv class=\"code-file\"\u003ebash\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003egit reflog\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\n\u003c/li\u003e\n\u003cli\u003eBoom, commit is back\n\n\u003cdiv class=\"code-block\"\u003e\u003cdiv class=\"code-file\"\u003ebash\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003egit cherry-pick \u0026lt;sha1 starter /\u0026gt;\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003c/div\u003e\n\u003c/li\u003e\n\u003c/ol\u003e\n\n","date_published":"2009-08-27T12:27:13-04:00","id":"2009-08-27-git-and-svn","tags":[],"title":"Git and SVN Notes","url":"https://blog.ummwhat.com/articles/git-and-svn/"}],"title":"Tom Sartain | Blog","version":"https://jsonfeed.org/version/1.1"}
