A quick conversion from cvs to git

notes:

  • I store all files related to services under /srv, or provide symbolic links.
  • Personal files are stored in a CVSROOT of :ext:Terry@vectra:/srv/cvs/ and are filed under module ‘Terry’, for lack of a better name lol.
  • server is vectra, workstation is dixie; communication done via the Secure SHell protocol.
  • I don’t use graphical software for these kind of tasks. GUIs are available, but I don’t want them wasting my time
  • The contents of my personal CVS module will be stored in it’s own spot as ‘cvs-head’ for backup purposes: I have no plans of committing to CVS or merging stuff back into it.
  • Access git is more or less just me and occasionally root@hostname, but may be expanded later
OpenBSD server:
# su - root
...
# pkg_add git cvsps
...
# groupadd -g 2005 git
# cd /srv/
# mkdir git
# chmod 7755 git
if you want to lock down the CVS, go to the CVSROOT
and revoke write access on your modules files
e.g. chmod -R ugo-w fooproject
# cd git
# git cvsimport -ikv -d /srv/cvs -C cvs-head Terry
...
# mkdir Terry
# chmod 0750 Terry; chown Terry:git Terry
# su - Terry
$ cd /srv/git/Terry
$ git init
...
FreeBSD workstation:

$ su - root
# pkg_add -r git
# pw groupadd -n git -g 2005 -M Terry
# exit
$ git clone vectra:/srv/git/cvs-head /tmp/Terry
$ cd /tmp/Terry; mv * .* ~/
$ cd ~
$ git remote add origin vectra:/srv/git/Terry
$ git push origin master
...

In a little while, I’ll probably refine things. Originally, I used the old mv file.ext file.c-vN.M and (cd ..; tar cf – project | gzip -c > /tmp/project-N.M.tar && mv /tmp/project-N-M.tar ./project/backups/) style approaches to my stuffs. The first time I went into using a source code management / version control system for a project, I selected Subversion (also known as svn) and enjoyed it quite a lot. Later on, when I decided to start checking in my configuration files, well… I like to keep my OpenBSD box pretty lean & mean; thus I used what came in the base, which was cvs (concurrent versions system). Subversion and CVS are so much alike, that I could live with CVS very easily (after all, it’s just my config files and an occasional project). I prefer svn to cvs, but hey, I’m a cheap bastard!

I’ve been thinking over the merits of Subversion, Bazaar (bzr), and git for various projects. I generally ruled out Monotone on inputs from another programmer, and having a general lack of interest in it myself. I also considered Mercurial (also known as hg), but I’m more familiar with git then hg. One of my friends uses hg for submitting patches to Mozilla and what not, and there is a project I’m involved with that I feel would benefit from using bzr; but either of those would mean a dependency on Python. Despite my levels of fluency in Python, my file server doesn’t have need of a scripting language like Ruby or Python; because OpenBSD provides Perl, SED, and AWK. So for me, git is a smaller package and it is just as easy to choose to pickup git as it is bzr. My workstation will always have Python, but that’s because I write python code lol.

Several of my various micro-projects use git on my work station, because there is no real need to stick them in the CVS server – and I don’t like CVS or rcs enough to employ them for the task lol. I’ve also considered replacing cvs with git on my laptop, and using it to fire off final commits to the CVS server, but eh… fuck CVS.

Sleep, rest, peace… do I even know the meaning of these words anymore?

Tired of shitty software

Ok, now this really pisses me off….

Firefox3 — CPU user time usage jumps up the chart just when scrolling a freaking page, often reaching 97% !!! I really didn’t like the change over from Firefox 1.5.x to Firefox 2.x but this is ludacris man… (and yes, I almost _never_ restart my web browser, I shouldn’t have to, especially when it’s as big, fat, and ugly as all Mozilla products!)

cvs — created a shell function that given a short message, auto-generates the kind of CVS log messages I want in my personal repository; then runs cvs commit -F tempfile. Causes CVS to shout about aborting because you can not specify both a message (as in -m msg) and logfile (as in -F tempfile) at the same time. Yet!!! I checked cvs log, and guess what? The son of a bitch committed it [each time] anyway.

I thought Microsoft’s ‘ERROR_SUCCESS‘ error code was funny, but that one is just stupid :/

And I am not even going to dig into things like UE2, XFire, Pidgin, various APIs and mobile devices ^_^. There are just some things in the computing world… that really piss me off; is it to much to ask for some decent software….? Interestingly, almost all of the software that I use, which doesn’t piss me off regularly — is predominantly portable UNIX software. *sigh*

A C programmer can write C in any language, until he gets lazy and remembers Perls regular expressions still work at four thirty in the morning.

Writer’s Block: In a Former Life

Do you believe in reincarnation? If your answer is “yes,” describe some of your past lives.

Live Journals Writer’s Block

Not really, but if there is such a thing… it would be nice to come back as a cat or a dog.

Dogs get to sleep all day, and don’t have to share. Cats get to sleep all day, and always find the best napping spots xD.

Useful way to pass the time

Got bored, have never found something like xkill that I can just say, “xkill somewindowname”. Found xwininfo last week, thought about this hehe:

#!/bin/sh
#
# kill X client by window name
#

if [ -n "$1" ]; then
xwininfo -name "$1" | grep 'Window id:' | awk '{ print $4 }' |
head -n 1 | xargs xkill -id
else
echo "usage: `basename $0` windowname"
fi

xkillname xconsole and poof – the xconsole window is killed, hehe.

Thank or punch?

In regards to JB’s recent question

Good thing:

learned what a ballistic coefficient is
learned about bullet sectional density and form factor
learned a bit about drag coefficients
found a helpful pseudo-constant for standard gravity

bad:

don’t have enough ballistics data
don’t have enough weather data

Spent a few hours in thought that I could have spent in game, but enjoyed the process lol. Hmm, I don’t think I’ve tried anything like that since the cows came home.

Writer’s Block: Dream Job

If you could have any job in the world, what would it be?

Live Journals Writer’s Block

I would take the BEST job in the entire country. Forget the presidency, it’s all about triple dee.

http://www.foodnetwork.com/diners-drive-ins-and-dives/index.html

Come on, Guy Fieri has like the best job in the USA — crusing in a classic ride, and eating ten times his weight in food xD. Better yet, just being his side-kick would be a great job too! As long as it comes with a chance to eat, hahaha.

Hmm, I can just imagine everyone who knows me, rolling their eyes about now lol. (of course it’s gotta involve food)

Common Lisp ?

Hmm, Steel Bank Common Lisp (SBCL – compiled), CLisp (Bytecode), or Armed Bear Common Lisp (Java bytecode)

Decisions, decisions ^_^

Hmm, so far it seems to be a bit of a delemia. links-hacked can’t handle posting to LJ; links lacks many small features. ELinks has them all, except the GUI mode, because it’s forked from a really old version of Links lool