Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 367878

Summary: Git migration request (AspectJ)
Product: Community Reporter: Andrew Clement <aclement>
Component: GitAssignee: Eclipse Webmaster <webmaster>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:

Description Andrew Clement CLA 2012-01-04 12:37:22 EST
I'd like to get the AspectJ repository migrated over to Git.

Currently there are four main folders for AspectJ in CVS:

/cvsroot/tools/org.aspectj/bundles
/cvsroot/tools/org.aspectj/modules
/cvsroot/tools/org.aspectj/releases
/cvsroot/tools/org.aspectj/shadows

I don't want bundles or releases any more - so I only need *modules* and *shadows* migrated across.  If possible, can I have one git repo for the contents of modules and one for shadows?  Something like:

folders in modules become top level folders in here:
git://git.eclipse.org/gitroot/aspectj/org.aspectj.git

So inside that org.aspectj.git area I would see ajbrowser/ajde/etc/etc

contents of shadows become top level entries in here:
git://git.eclipse.org/gitroot/aspectj/org.aspectj.shadows.git

I would like to keep the tags/histories/etc for the files.  They are particularly important for the shadows area.

Any questions, let me know! thanks.  (there is no rush on this)
Comment 1 Eclipse Webmaster CLA 2012-01-06 14:23:02 EST
Ok, I've done a pair of test imports.  Can you check repos are as you expect?

-M.
Comment 2 Andrew Clement CLA 2012-01-09 12:15:39 EST
I'll check them out right now.
Comment 3 Andrew Clement CLA 2012-01-09 16:33:35 EST
On the first one:

git://git.eclipse.org/gitroot/aspectj/org.aspectj.git

I think everything is there.  The only thing that looks funny is that it contains all the .class files for all the projects.  I guess they were committed originally in CVS and then later the bin folder was added to cvsignore.  This means they just pollute the repo as we don't really want them in there.  I don't know if you want to try again without copying those across, (so that would be to exclude the contents of bin/**/*.class for all projects) or I can just delete them all in my first commit on the git repo.

I'm looking at the second repository now.
Comment 4 Andrew Clement CLA 2012-01-09 17:45:30 EST
On the second repository, I'm seeing something strange.  First I do:

git clone git://git.eclipse.org/gitroot/aspectj/org.aspectj.shadows.git

then I do

git checkout --track -b aj_v_B79_R37x origin/aj_v_B79_R37x

(this is the branch I'm most interested in).

I then immediately do:

git status

and it shows an unexpected change (when I haven't done anything):

# On branch aj_v_B79_R37x
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#	modified:   org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/ASTNode.java
#
no changes added to commit (use "git add" and/or "git commit -a")

It appears there is some kind of case problem as the file should be called ASTNode.java but if I look at it in on disk it is called AstNode.java

Did anything funny occur during the migration?  I'm trying to understand if this problem is new or already existed in the CVS copy in some way.
Comment 5 Eclipse Webmaster CLA 2012-01-10 11:21:13 EST
Both of these are the results of 'git-cvsimport -i -p -x'(which is our standard import method), and I don't recall seeing any errors thrown during the import.

-M.
Comment 6 Andrew Clement CLA 2012-01-10 18:14:07 EST
I checked a bit more thoroughly and the branch is all wrong.  However, I don't mind fixing this up and moving forward from here.

Can you let me know what happens to the CVS contents?  From what I read git-cvsimport can also mess up tags.  There are kind of too many of these for me to check they are set correctly in the git repo - but if I knew I could go back to CVS if I discover problems in the future, that would be fine.
Comment 7 Eclipse Webmaster CLA 2012-01-11 10:37:41 EST
Once the move is 'official' we make the CVS data read only for a few months and then archive it.

-M.
Comment 8 Andrew Clement CLA 2012-01-11 11:35:15 EST
Ok.  As long as I can still get to the CVS in some form if I have to, let's go with these git repos.  I'll patch up the important branch I need in the shadows repo.

thanks for your help getting them populated!
Comment 9 Eclipse Webmaster CLA 2012-01-11 11:50:51 EST
OK, I"ve marked the repos as read-only, and have queued them for archiving in 6 months.


-M.