Skip to content

Conversation

@bobtista
Copy link

@bobtista bobtista commented Oct 23, 2025

  • Moved 100 identical Common files from Generals/GeneralsMD to Core
  • Updated CMakeLists.txt in Core, Generals, and GeneralsMD
  • The only difference in these files was line 2's comment Generals Vs Zero Hour

@xezon
Copy link

xezon commented Oct 24, 2025

It would be better to chat about this before committing to moving. Mass moving can cause merge conflicts in other pending Pull Requests and we should move them in small volumes to reduce impact.

Btw we do have a python script for moving files - incase you did it by hand.

@bobtista
Copy link
Author

It would be better to chat about this before committing to moving. Mass moving can cause merge conflicts in other pending Pull Requests and we should move them in small volumes to reduce impact.

Btw we do have a python script for moving files - incase you did it by hand.

Ah thank you I see unify_move_files.py now :)

Most conflicts are just cmakelists.txt modifications, which should be easy to resolve.

There are some single file conflicts where I could just defer unifying that file til a later PR eg:
1703 (Stubbjax): Add replay archive feature Generals/Code/GameEngine/Include/Common/Recorder.h
1739 (Skyaero42): Remove unused language.h defines Generals/Code/GameEngine/Include/Common/Language.h
1668 (jbremer) - Network buffer overflow fix Generals/Code/GameEngine/Source/GameNetwork/NetPacket.cpp
1593 (xezon): Remove double camera initialization GeneralsMD/Code/GameEngine/Source/GameLogic/System/GameLogic.cpp

The PRs we should probably merge before, or ask the authors if they think the merge conflict is easy enough:
1712 (Skyaero42) (strcpy→strlcpy)
1722 (Skyaero42) (include guard cleanup)
1722 (Skyaero42): Remove redundant include guards
1607 (Mauller) Resolution scaling
1711 (Mauller) Camera adjustments
1607 (Mauller): Resolution scaling for unit health
1711 (Mauller): Camera height adjustment for aspect ratio
1661 (xezon): Smoothened frame rate for scrolling
1735 (xezon): Merge GameNetwork
1740 (slurmlord): More precompiled headers

Note: I assumed any file that was changed both in a PR and in one of my Unify PRs is a conflict. I used the last 25 PRs assuming the ones earlier than that are not in active development. To get the PR files changed:

gh pr list --limit 25 --json number,title,state,files,author --repo TheSuperHackers/GeneralsGameCode
git diff --name-only main..bobtista/unify-common
git diff --name-only main..bobtista/unify-gameclient
git diff --name-only main..bobtista/unify-gamelogic
git diff --name-only main..bobtista/unify-network

Then a python script to loop over the PRs and check for files that are changed in both.

@bobtista bobtista force-pushed the bobtista/unify-common branch 2 times, most recently from 365eba0 to efe54bd Compare October 26, 2025 03:00
@bobtista bobtista force-pushed the bobtista/unify-common branch from a9a6da4 to 476c313 Compare October 26, 2025 03:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants