copy in your plugins into bundles, features into features, test plugins into tests, etc

add all of your files: git add -A

commit them with a useful commit message

add 2 tags. One will be initial-import. The other should be a time tag, like v20101124-0800

I split the next step up into 2:

git push origin master

git push --tags origin

Example .gitignore

bin/
*~
*.rej
*.bak

We build our git repos still using map files, checked into CVS in the /cvsroot/eclipsee4/releng module. You can generate a default map file for your initial commit from your repo root using git-gen-map.sh. ex:

Submitting for a build

Note: We have a policy that all commits have the associated bug number. Usually our format is: "Bug <number> - <bug title>" and then any specific comments after the title or on the next line. It's important that we only list 1 bug # per line, and at the beginning of the line. A line with "bug #" or "Bug #" without the title is also acceptable.

We have 2 scripts used for submitting for the build. One to update the map files, and one to generate the submission report for our mailing list e4-dev@eclipse.org

git-map.sh is used to update the map files.The output is a set of commands which should be captured, reviewed and then executed to update the map files.

git-submission.sh is used to generate a build submission report. The last command output by git-map.sh will be a call to git-submission.sh saving the output to "report.txt".

When submitting for a build, the git repository clones should be checked out on the branch you wish to tag.

relengRoot: an absolute path to the releng project containing the map files

repoUrl - git repository URLs to tag

The script performs the following steps:

Find all the map files under relengRoot

For each map file, find all entries containing "repo=repoUrl" where repoUrl is one of the passed in git repositories

For each git map file entry, find the corresponding project under the git repository clone under repoRoot.

Check if the last commit in the project has the current tag from the map file, if not tag and output a command to update the map file

For example, consider a git repository git://git.eclipse.org/gitroot/org.eclipse.e4.deeplink.git. If repoRoot=/eclipse/git then the script expects a subfolder /eclipse/git/org.eclipse.e4.deeplink which is a clone of this repository. The releng map files are under /eclipse/workspace/e4-releng. The command line to invoke git-map.sh would be: