I'm working in such a studio and we use perforce and a single workspace for our project. I was trying to replicate how it works in bigger studios since that's what I wanna do in the futureīigger studios don't care of submodules or something like that rather than have one repo for the whole project most of the time. It looks like this in the build order in my solution from first to last: Realized that I didn't write about the build dependencies in my solution (it was obvious to me but maybe not to you). Please do ask for more information if I wasn't clear enough. Problem is then that visual studios doesn't approve of having multiple projects of same name.īut it would at least solve the problem of the commit dependency (if that even is the correct term).
GIT MERGER IN UNITY WITH VISUAL STUDIO UPDATE
It becomes a 2 step update which I think becomes a little bit unecessary. So if I change Utility by adding new template which either Physics or Renderer uses, let's say MyVector, I currently have this kind of connection:
It's frequently changed with new templates, new helpers and so on. Problem is, Utility repo is still quite new. Utility (templates, helper macros, math, prints and so on)
GIT MERGER IN UNITY WITH VISUAL STUDIO CODE
So this is how we solved this problem, I might later provide a source code of the merging tool for those VS project files.So I've been trying to setup my own game engine but have a small problem. Then git pull command is applied to ensure that all work from other developers is up to date.Īnother merging procedure is undertaken, to ensure that the developer filter files are up to date.Īnd the last thing is to push all the content into the git.Įverything is handled mostly automatically, we are still testing and polishing our tool. Then developer launches our merging tool, it compares each developer project and filter file with developers files and populates developers files if necessary.Īfter this quick procedure, the merging tool generates a new project and filters file and copies it into the right place.Īfter completing his work, he or she must run merging tool, it will copy a new content what has been added from his project and filters files, and write this content into corresponding devx folder. There is also a configuration file that can be configured for each developer individually.Įach developer before starting any work writes git pull, this copies each individual developer project files into their corresponding folders, no merge errors here. What we did at the end with this problem: we did several other tests on those project and filter files, we still had to merge them somehow.Īt the end we forced git to ignore them, but we wrote our own merging tool for these files.Įvery developer gets it's own folder for his or her own filters and project files: dev1, dev2, devn folders. Those are the bits of the project file that got pulled out because they were related to non-code IDE state. Short answer: don't bother versioning the filters file. We have tried push & commit and then pull -rebase, but this didn't work either, just resulted in merge errors which we had to fix manually.Ĭould you please tell us that can be done in this case - if possible step by step commands.
If Developer 2 pulls down the content, everything works out well, except that mysterious *.vcxproj.filters file, that just does not want to merge. ", "git commit -m'Message'", "git push", everything results fine.
cpp) and filters, the git can't merge *.vcxproj.filters file for the developer who has been working on the project - latest.ĭeveloper 1 writes: "git add. When two developers work on separate header and cpp files, most of the time everything works out nicely, but as soon as two developers add new files (.h and. The problem is related with the merge particularly with the *.vcxproj.filters file, which includes in itself project filters and is basically an xml file. Several people are working on the project, which is being developed in the Visual Studio, pulling and pushing updates to the master branch in the git. Our small team is having currently a huge problem related to the Git.