1/25/08

cvs server on ubuntu gutsy

Note for my first time setting up cvs server on ubuntu gutsy. CVS, a version control system, allow you to work on sourcecode with your team. To install it on ubuntu, we need two packages from repos, cvs and the wrapper.

pnix@pnix-a7n:~$ sudo aptitude install cvs cvsd
[sudo] password for pnix:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Building tag database... Done
The following NEW packages will be installed:
cvs cvsd
0 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 1756kB of archives. After unpacking 3973kB will be used.
Writing extended state information... Done
Get:1 http://th.archive.ubuntu.com gutsy/main cvs 1:1.12.13-8 [1669kB]
Get:2 http://th.archive.ubuntu.com gutsy/universe cvsd 1.0.13 [87.4kB]
...
Building tag database... Done
pnix@pnix-a7n:~$

during installation it will ask for repository. I just say '/myrepos'.
next, create repos folder under /var/lib/cvsd and initialize it.
pnix@pnix-a7n:~$ cd /var/lib/cvsd
pnix@pnix-a7n:cvsd$ sudo mkdir myrepos
pnix@pnix-a7n:cvsd$ sudo cvs -d /var/lib/cvsd/myrepos init
pnix@pnix-a7n:cvsd$ sudo chown -R cvsd:cvsd myrepos
pnix@pnix-a7n:cvsd$

now add new user [change username to what you want]
pnix@pnix-a7n:cvsd$ sudo cvsd-passwd /var/lib/cvsd/myrepos pnix
/usr/sbin/cvsd-passwd: adding user 'pnix' to '/var/lib/cvsd/myrepos/CVSROOT/passwd'
Enter new password:
Retype new password:
pnix@pnix-a7n:cvsd$


login and checkout test

pnix@pnix-a7n:cvsd$ cd ~/tmp
pnix@pnix-a7n:tmp$ cvs -d :pserver:pnix@localhost:/myrepos login
Logging in to :pserver:pnix@localhost:2401/myrepos
CVS password:
cvs login: CVS password file /home/pnix/.cvspass does not exist - creating a new file
pnix@pnix-a7n:cvsd$ cvs -d :pserver:pnix@localhost:/myrepos checkout .
cvs checkout: Updating .
cvs checkout: Updating CVSROOT
U CVSROOT/checkoutlist
U CVSROOT/commitinfo
U CVSROOT/config
U CVSROOT/cvswrappers
U CVSROOT/loginfo
U CVSROOT/modules
U CVSROOT/notify
U CVSROOT/postadmin
U CVSROOT/postproxy
U CVSROOT/posttag
U CVSROOT/postwatch
U CVSROOT/preproxy
U CVSROOT/rcsinfo
U CVSROOT/taginfo
U CVSROOT/verifymsg
pnix@pnix-a7n:tmp$

Eclipse test
Eclipse come with CVS support build-in. To use CVS, change the perspective to CVS Repos Exploring. Right click in "CVS Repositories" view choose "New > Repository Location". Enter information for our new CVS server then click "Finish".
That's it. If nothing wrong we just create new repos location and ready for any project to share.

1/10/08

include external jar into your own exported jar

One problem that almost java guys have is create jar with external jar include. In eclipse it has export function to export project but there's no way to add external jar with this method. Today I found one solution, the project Fat Jar Eclipse Plug-In can take care this problem.
Installation is just unzip it to eclipse folder then restart eclipse in shell or command line with this command "eclipse -clean". Now your eclipse already have fatjar plugin. To use it export the project, from your package explorer, right click on your project and select "Export...". You will get "Export Dialog"[see pic], choose Other->Fat Jar Exporter. From here you will know what to do next.:)