There are many different ways to contribute to CMaNGOS to continue improving it!
These guidelines shall help you by providing suggested ways of how you can help.
As CMaNGOS and its friendly projects are a huge and widespread way of working, you can dig in at any place you want to!
Work for any part is appreciated!
This guide however is only for contributing to the CMaNGOS core part - which is hosted at https://github.com/cmangos
You can help us developing the core by (at least!)
If you spot a bug, please report it by opening an issue on our centralized GitHub issue tracking repository: cmangos/issues. Before you do so, please consider the following points:
When you decide to create a new bug report, please make sure that this report includes:
Merging pull-requests into your branch for testing can be done by the GUIs provided by GitHub. For people not wanting to use them, we have a "MergeHelper.sh" script shipped in contrib/
You can - also on Windows within a Git Bash - start the script by using
contrib/MergeHelper.sh -h
This script operates in two modes:
contrib/MergeHelper.sh 37
which will simply merge pull-request 37 from your origin repository
You can use the script with a (created) config file to automatically fetch+merge repositories, branches and pull-requests
This should be especially reasonable, if you yourself use topic branches like described in the next section!
Please be sure to feedback your test-results through proper channels -- this means commenting on the pull-requests, commenting on issues and commits on GitHub.
Sometimes you might want to import commits from a third-party repository.
For this you need to setup a remote pointing to this repository
git remote add <Name> git://github.com/USER/REPO.git
and then git fetch it and merge the branches you are interested in.
Also note that you can easily use the MergeHelper script mentioned above to automate fetch+merge after initial setup!
We suggest to use so-called topic-branches for developing some contribution. The idea is to bundle all required commits for a project into one topic branch. This topic branch is expected to be published and shared very fast, so that people can comment on your work as soon as possible
To easily create a topic branch we have added a small helper script, that will guide you interactively through the process of setting up a topic branch (even if this is basic git-use).
You can start the script by using
contrib/CreateTopicBranch.sh
While developing you should try to keep these points in mind:
Also we expect you to keep our Coding Standards This code style is automatically enforced by the helper scripts in contrib/cleanupTools (which require AStyle to be installed)
You can publish and share your contribution projects via forum or by pull-requests
When you have created your topic-branch and pushed it to your local repository, you can easily create a pull-request to our repo from this! Please always create the pull request on the repository containing the CMaNGOS code you were working on.
Here is the GitHub Information on Pull-Requests
This has these advantages:
If it is only a minor change and you do not want to create a topic-branch and a pull request (though you should, it's fast and easy to do!), you can also open a normal issue and paste the diff in there (but please use the Markdown tags to mark it as a code!). Rule of thumb is that more than 20 lines should most definitely be posted as a pull request instead of an issue with a simple diff.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。