Issues with 1 repo git

going to try and add to this list:

  • If I want to work on a plugin, i have to branch the entire repo, meaning i can only practically work on 1 plugin at a time / have to leave branches with useful features because they’re not fully addonpack ready
    ** Possible solution : add a .gitignore folder ‘testing’ where we put plugins that are in testing phase, then we can put these in seperate repos

i can only practically work on 1 plugin at a time

why is that? i put each of my plugins in a seperate branch and can switch between them as i like.
for example:
once they’re in a stable state you can merge them all back to develop and give us a pull request…

have to leave branches with useful features because they’re not fully addonpack ready

i think i need an example. didn’t understand that one.

so if i put my plugins all in seperate branches then i have to leave that branch every time i want to work on a separate plugin
i can then merge both into a 3rd branch to work but this involves a lot of extra fiddling each time i want to work on a new plugin (rebuilds, possible merge errors, git breakdowns, Visual Studio needs shutting down)

using different subdirectories then?

i.e. everything in 1 branch? or are you suggesting checking out different branches in different subdirs?

well you can do something like this:

in your main branch you have this:

if you decide to do a bugfix on plugin1, you create a myplugin1-fix-some-issue branch, do whatever needs to be done and once completed merge it back to your main branch.

if you decide to do a new plugin, and all will be very experimental, create a new myplugin3 branch and add the folder

that’s how we work with the repository and merging a hotfix/feature branch back to main is not that often (i’d say once a week) whereas merging main into the hotfix/feature branch you’re working on happens on a daily basis.
i never experienced any git breakdowns whatsoever, and visual studio (2010 at least) works quite well without shutting it down everytime i switch a branch. it simply asks me to reload the solution file which is exactly what i want it to do.

also have a look at the ‘git stash’ command, with which you can easily stash the work you’re not ready yet to commit, to work on another hotfix branch for example.

all this we tried to explain in the vvvv-sdk wiki site, which also contains a link to a more indepth explanation of our branching model.

i’ve been getting a lot of files being reported as changed when i didn’t touch them, also i sometimes get this kind of thing:

which i presume is the funny french charachters

bilderbuchi commented that the changed files thing (errors i get seperate from that) might be to do with line endings which seems very plausible, but since i also get the problem on binary files there must be something else going on. also the gitignore was painfully inadequate for a long time so improvements to that are making things better

git stash doesn’t help
neither does a hard reset or a checkout

my workflow is generally:

  1. start computer
  2. start visual studio
  3. start vvvv from visual studio
  4. patch
  5. sometimes make some edits to plugins whilst patching by pausing (this could happen to any plugin at any time even if i didn’t plan to edit that plugin).
  6. sometimes restart vvvv when necessary but keep visual studio open

if i have to do all this branching crap, then i have to restart visual studio and git faff every time i think about editing some code. and this is the deal breaker, that you can’t spontaneously edit anything.

and whenever you do any branching, merging, etc, then you have to rely on so many more git things having been properly dealt with, otherwise you’re spending a couple of hours not doing what you’re supposed to be doing.
it’s just a complete pain that i refuse to find effective.
please don’t try and drag me in kicking and screaming to this scheme i hate

maybe i’m lazy.

looking to contributing to the addonpack is the #1 reason i’m trying to keep my things in the vvvv-sdk.
other than that i’m ok to move elsewhere and just develop against the vvvv-sdk

but maybe this subtree thing is worth a shot

hmpf, sounds horrible what you describe. never had such issues with git. maybe someone else?

@elliot are you switching from subrepos to original structured branch? This can be a trouble, because git not recognising switching from dirrectory to subrepo correctly.

regarding the funny french characters please check: vvvv-sdk-update-git-with-unicode-support