Moving your Dreamwidth installation to use Github
From Dreamwidth Notes
These instructions are for dreamhacks; those running your own instances I trust that you can modify to fit. This also assumes that you've gone through the "Set up git" instructions on https://help.github.com/articles/set-up-git
Contents
- 1 stop all workers and the server
- 2 move your old $LJHOME aside (don't delete it though)
- 3 On github, fork dreamwidth's dw-free and dw-nonfree repositories
- 4 set up dw-free
- 5 for dev servers (not clone sites) set up dw-nonfree
- 6 run checkconfig
- 7 non-dreamhack users:
- 8 start server again
- 9 some settings
stop all workers and the server
killall worker-manager stop-apache
move your old $LJHOME aside (don't delete it though)
mv $LJHOME $LJHOME-xx
On github, fork dreamwidth's dw-free and dw-nonfree repositories
These are the two Dreamwidth repositories:
Here's a quick overview of how the repositories work together:
- dw-free is the main repository and goes into $LJHOME
- other repositories will go into $LJHOME/ext
- personal config files go into $LJHOME/ext/local
- Contents of $LJHOME will be live when you start the server
- Contents of $LJHOME/ext will be used automatically (no syncing)
Now it's time to set things up:
set up dw-free
# clone a copy of the repository onto your machine git clone https://github.com/USERNAME/dw-free.git $LJHOME cd $LJHOME # and let's make it aware of the dreamwidth repository so we can grab updates later git remote add dreamwidth https://github.com/dreamwidth/dw-free git fetch dreamwidth git branch --set-upstream develop dreamwidth/develop git branch --set-upstream master dreamwidth/master # now set up the folder for external repositories / modules mkdir $LJHOME/ext cd $LJHOME/ext
for dev servers (not clone sites) set up dw-nonfree
git clone https://github.com/USERNAME/dw-nonfree.git cd dw-nonfree git remote add dreamwidth https://github.com/dreamwidth/dw-nonfree git fetch dreamwidth git branch --set-upstream develop dreamwidth/develop git branch --set-upstream master dreamwidth/master cd ..
## copy over your config files, and tell them to take priority ## over config files in any of the repos mkdir --parents local/etc echo "highest" > local/.dir_scope cp $LJHOME-xx/etc/config* local/etc/
run checkconfig
cd $LJHOME bin/checkconfig.pl
non-dreamhack users:
- install .deb packages if given
- install any modules without .deb packages via cpan (theSchwartz)
- check any personal scripts you have to make sure they aren't affected by the directory config change
- note: you won't need to run "dw sync" / "bin/cvsreport.pl --sync --cvs/--live" or anything of the sort anymore
start server again
start-apache
some settings
You may be interested in git settings and git autocomplete to make your life easier.