Hi people, Hi Malex,
In the past, I was a little bit bothered by the fact that git repository had a "Scribus/" directory at its root, which then contained the Scribus source. I was wondering why this extra level was needed, but since the real files were just a "cd" away, I never really cared. I was wrong! I should have said at the beginning and it would have been an easy fix. Now, I care! I'm trying to document, how to start contributing to Scribus by using Qt Creator and the issue i get is that the "Qt/git" wizard can't find the Qt project file, because it's not in the root directory! Instead of bothering each single potential contributor with tedious extra steps, when starting toying with the Scribus code, i think that it's really time to get this fixed for real and remove that "useless" Scribus/ directory. I've been to the #git support channel and I asked the people in there what they think about such a change. The answer could be summarized in: from the git point of view, it's not really a good idea, but if you have a small team it should not bee too painful. So, I'd like to suggest you that we do it before the number of people using the git repository grows and it gets really painful! Now some facts. The command to run is: $ git filter-branch --tag-name-filter cat --prune-empty \ --subdirectory-filter Scribus/ -f -- --all and it has to be run at the root of the repository. it run for about twenty minutes on my computer and the result looks good. A bit more visually, the result is the following. Currently, when you clone the scribus.git repository you get the following content: http://www.git.scribus-ece.info/?p=.git;a=tree;h=refs/heads/ece14;hb=refs/heads/ece14 ... after the change proposed it would look like this: http://www.git.scribus-ece.info/?p=.git;a=tree;f=Scribus;h=bb3551bc28dcd5d9a5e999b441be42665be611a7;hb=refs/heads/ece14 If we decide to make the change, the guys on #git suggested the following steps: - fix a day and time when the change should happen. - everybody pushes what he has to push - somebody (A) checkouts all the remote branches - (A) removes all the remote branches - (A) fixes the directory structure on his local repository - (A) pushes the changes to the server - (A) recreates all the remote branch - everybody clones the new repository and checkout the "new" branches What is still missing: how to fix the repository tracking the svn trunk. I admit that it is quite some work, but, imo, it looks manageable. And I really would like to fix this issue, before even more people start working on the git repository! What are your thoughts? ciao a.l.e
