> @kugel- How well would it work, when: > > 1. The `parsers` directory is VERY different from upstream and the diff > would be giant. > > 2. We only use the `main` and `parsers` directory from > https://github.com/universal-ctags/ctags - we don't use anything else. Now of > course we could add all the rest as well, including the tons of unit tests, > docs, etc. but I'm not sure it's a good idea. > > > Now I have no experience with git subtrees so maybe this is solvable somehow. > I'm just afraid we'd get huge amount of stuff we don't care about and having > to deal with all the diffs and merge conflicts inside `parsers` whenever > something changes upstream would make our life much harder.
I thought we are trending towards using upstream as-is, with only small changes needed (including new files). Well, with git-subtree, syncing to upstream is done by a conventional merge. That means: - Files where we don't make changes always merge fine (for dirs we don't use). - Our changes and upstream changes are merged by git's methods - deletions/renamings can cause tree conflicts which are messy to deal with If you say that our copy is wildly different and continues to be so then git-subtree may not be perfect. Otherwise we are enabled to sync via a single "git subtree pull <url> <tag>" command and have git handle the merging. Plus we wouldn't need to maintain diffs separately but simply make commits directly to the code. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/geany/geany/pull/2132#issuecomment-495389623
