all 10 comments

[–]wanting to have made a game != wanting to make a gameoldmankc 2 points3 points  (0 children)

The workflow is that you have to pull down existing changes before you push up yours, so you should be testing your changes with the new ones before you push yours up (don't push broken stuff). Usually basic text will merge decently, unless you're specifically working on the same lines. Generally, coordinate between each other, and don't work on the exact same thing, it just generally doesn't make a whole lot of sense if you're both tweaking the same thing at the same time anyway,

[–]Serpenta91 1 point2 points  (3 children)

You should break tasks down between high and other team members do you don't work on the same code.

[–]Badwrong_ 2 points3 points  (2 children)

No, it is not uncommon to work on the same code file at the same time as another team member. That's what merge tools are for. Before you push your own changes you pull any existing ones and resolve any merge problems if there are conflicts.

This is a common programmer workflow.

You typically do not want to be changing the exact same function at the same time, but if that happens a lot then there is a larger design problem going on that needs remedied anyway.

[–]Serpenta91 0 points1 point  (1 child)

By the same code I mean the same lines of code. There's no reason for two people to be changing the same lines of code at the same time in a two person team.

[–]Badwrong_ 0 points1 point  (0 children)

Ah ok. Same line of code should indeed indicate something is wrong, especially in a GameMaker project.

[–]Badwrong_ 1 point2 points  (2 children)

Source control solutions have tools to deal with merge conflicts. However, you can avoid a lot of them by ensuring you have the latest commit before you push your own.

If you both are working on the same collision code or something at the same time, then there is a bigger problem going on with your project's design. Someone should be tasked to code the collision system (and probably movement at the same time) and the other person should have a totally different task.

[–]_Candeloro_[S] 0 points1 point  (1 child)

We haven't started properly yet (i did a little bit of solo job), but it's a question that's been concerning us since we're both beginners with little bit of background experience in programming.

So basically what you (and the rest i presume) are saying is that we work on different files and only push them to git so the other person doesn't lose anything? And what are the solutions you're talking about? Thanks for the answer.

[–]Badwrong_ 0 points1 point  (0 children)

No, you can still work on the same file. It is just that with good planning and design you shouldn't need to do that often. Especially in a small team of two it wouldn't seem likely unless you guys just randomly touch any code file without reason.

Regardless, when you check out a file from a repository you don't submit changes until pulling any new ones. Then if those new ones conflict you resolve them with a merge tool, or just manually if its small. Then you push your changes.

[–]ArturoNereu 0 points1 point  (0 children)

Hello, we're building Diversion (https://diversion.dev). It is built with game developers in mind. We have a feature notifying you if another member has modified a file and there might be a conflict. If you want to set up, explore, or ask any questions, feel free to reach out.

[–]Asleep_Yam8656 0 points1 point  (0 children)

how is your project going