-This little howto is about Git repository used by Titanium Linux.
-You will find here examples of most often used git commands.
+This little howto is about the Git repository used by Titanium Linux.
+You will find here examples of the most common git commands.
Ready? Let's start (you must have RW access to TLD git repositories).
+Table Of Content:
+
+1. How do I commit a new .spec file or package to the repository?
+ a) Clone an empty repository (note: it will be automatically created on server
+ side.)
+ b) Set your local Email address
+ c) Put your files into the repository and add them locally
+ d) Push your changes to the server
+2. Crap, I've checked out a repository, forgot to change the local e-mail
+ address and commited my changes. Now I can't push them to the server.
+ What can I do?
+3. My new repository didn't show up on the web.
+4. I've deleted some files in my cloned repo. I'm doing git pull, but they
+ do not reappear.
+5. How can I add a description to a new repository?
+6. SPECS: What is obsolete now that we have GIT?
+
==============================================================================
1. How do I commit a new .spec file or package to the repository?
a) Clone an empty repository (note: it will be automatically created on server
- side.
+ side.)
git clone git@git.tld-linux.org:packages/your_new_package
==============================================================================
3. My new repository didn't show up on the web.
-Repository "packages" is checked every 15 minutes for new subrepositories by
-cron job. If found, they're added to the web. If for some reason cron job will
-fail ask one of git admins to run and/or fix this script:
+Repository "packages" are checked every 15 minutes for new subrepositories by
+a cron job. If found, they're added to the web. If for some reason cron job
+fails, ask one of the git admins to run and/or fix this script:
~git/scripts/packages_enable_gitweb.sh
-Top level repositores must be manually added to gitweb. Ask one of gitadmins
-to do following:
+Top level repositores have to be added manually to gitweb. Ask one of the git
+admins to do the following:
ssh your_login@kraz.tld-linux.org
sudo su - git
4. I've deleted some files in my cloned repo. I'm doing git pull, but they
do not reappear.
-Please do following in your cloned repo to restore deleted files:
+Please do the following in your cloned repo to restore deleted files:
git checkout some.file
git ls-files -d | xargs git checkout --
==============================================================================
-5. How can I add description for new repository?
+5. How can I add a description to a new repository?
+
+Do the following:
-Do following:
+echo "Some description" |ssh git@git.tld-linux.org setdesc packages/some_package
-ssh git@git.tld-linux.org setdesc packages/some_package "Some description"
+Ex.
+$ echo "kernel-desktop, a linux version optimised for the desktop" |ssh git@git.tld-linux.org setdesc packages/kernel-desktop
+New description is:
+kernel-desktop, a linux version optimised for the desktop
+$
+
+==============================================================================
+6. SPECS: What is obsolete now that we have GIT?
+
+Now that we use GIT for our own .spec files and projects, there're some things
+we do no longer need.
+
+a) Remove "# $Revision:" lines on top of a .spec file
+b) Remove the whole changelog from the bottom of a .spec file
+c) Remove "%define date %(echo `LC_ALL="C" date +"%a %b %d %Y"`)"
+d) Remove feedback stuff and all PLD related links
+
+Why all that removing?
+There're a couple of reasons why we don't want to keep these things in our
+specs.
+Most of them are strictly CVS related, like the Revision stuff. We don't need
+to artificially increase the size of our .spec files by having the whole
+changelog included in them. Use "git log", with all its sophisticated options,
+to visualise changes, make statistics etc.