Page:
Backporting Tutorial
Pages
Automatic Action
Backporting Tutorial
Beginners Guide Home
Beginners Guide How Everything Fits Together
Beginners Guide Introduction
Beginners Guide What Everything Is
Bot Commands
Bot Interaction
Bot Switches
Bot TradeSkills
Build CMaNGOS for Mac OS X
Build CMaNGOS for MacOS 11
CMake to Boost Version Compatibility Table
Coding Standards
Coding conventions
Combat Commands
Creating a systemd service
Creature_Template_ClassLevelStats
Detailed installation guide for Microsoft Windows
Discord FAQ
Distributed Reverse Proxying
Equipment Commands
FAQ Frequently Asked Questions
GemProperties.dbc
Getting a C 11 compiler on Mac OS X
Git Tutorials
Guide to build Playerbot
InterAction Commands
ItemSet.dbc
MoveMapGen.exe
On Help and All Things Support
Pet Taming Commands
PlayerBot Features
Reputation
Server Commands
Skill Commands
Spell system
SummonProperties.dbc
TBC Backporting TODO WOTLK Commits
Threading model
Transport tech
Worldstates
areatrigger_tavern
broadcast_text
character
combat_condition
creature_addon
creature_ai_scripts
creature_equip_template
creature_immunities
creature_linking
creature_model_race
creature_movement
creature_movement_template
creature_spawn_data
creature_spawn_data_template
creature_spawn_entry
creature_spell_list
creature_template_addon
creature_template_spells
game_event_quest
gameobject_addon
gameobject_spawn_entry
pet_autocast_spell_list
pool_creature_template
pool_gameobject_template
script_texts
spawn_group
spell_cone
spell_proc_item_enchant
spell_scripts
string_id
unit_condition
waypoint_path
waypoint_path_name
world_template
worldstate_expression
worldstate_name
No results
1
Backporting Tutorial
GeekBot edited this page 2026-08-17 19:18:14 +00:00
This tutorial was written by stfx for developers to correctly backport commits and shows an example on backporting from mangos-wotlk to mangos-tbc.
1. Set up the directory
- Clone mangos-tbc repo
- Add mangos-wotlk remote:
git remote add wotlk _url_
2. Backport commits
- Fetch from mangos-wotlk every time something changes there:
git fetch wotlk - Use backport tool with hash of commit to backport:
contrib/backporting/mangos-backport.sh _commit_hash_ - Check and resolve conflicts if any exist
- If you had to resolve conflicts you still have to amend the commit:
git commit -s --amend
2.1. Backport commits with sql changes
- Build git_id tool in release mode if you did not already (located in contrib\git_id)
- Push every outstanding commit because git_id checks last version from remote
- Fetch from mangos-wotlk (like before)
- Use backport tool (like before)
- Check and resolve conflicts (like before)
- Rename the sql updates in sql/updates/* directory by adding the client version's prefix character at the start of the filename like so:
11754_01_mangos_mangos_string.sql -> s11754_01_mangos_mangos_string.sql - Amend commit (like before)
- Use git_id in git bash:
contrib/git_id/Release/git_id.exe- This automatically writes all db_version changes to sql/base/*.sql and sql/updates/*/*.sql files
3. Push the commits
- Check correct authorship
- Check commit number for commits with sql changes
- Push to the mangos-tbc remote:
git push origin master(assuming you named the mangos-tbc remote 'origin' which is the default after cloning)
General Links:
Subsystems:
Database Structure:
Additional Data:
Core Repositories:
DB Repositories: