diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3fabe2e5f..e77ec6a3e 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,19 +8,16 @@ Project description: The Eclipse Memory Analyzer is a fast and feature-rich Java heap dump analyzer that helps you find memory leaks and reduce memory consumption. -- +- Source ------ -The Memory Analyzer code is stored in a git repository. The URLs to access it are: +The Memory Analyzer code is stored in a git repository on Github. -ssh://@git.eclipse.org:29418/mat/org.eclipse.mat -https://@git.eclipse.org/r/mat/org.eclipse.mat + -A web browsable repository is available at - - +You can contribute bugfixes and new features by sending pull requests through GitHub. Developer resources: -------------------- @@ -34,31 +31,49 @@ Information regarding source code management, builds, coding standards, and more Contributing a patch -------------------- -The MAT repositories are accessed through Gerrit, the code review -project, which makes it possible for anybody to clone the repository, make -changes and push them back for review and eventual acceptance into the project. - -Before your first contribution can be accepted, you need to electronically sign the [Eclipse Contributor Agreement](https://www.eclipse.org/legal/ECA.php) (ECA). Find more information in the ECA [FAQ](https://www.eclipse.org/legal/ecafaq.php). - -Find more details about how to contribute in: -- [Development Resources/Contributing via Git](https://wiki.eclipse.org/Development_Resources/Contributing_via_Git) -- [Development Resources/Handling Git Contributions](https://wiki.eclipse.org/Development_Resources/Handling_Git_Contributions) - -Once the patch is pushed back to Gerrit, the project committers will be -informed and they will undertake a review of the code. The patch may need -modifying for some reason. In order to make amending commits more -straightforward, the steps at -https://git.eclipse.org/r/Documentation/cmd-hook-commit-msg.html should be -followed. This automatically inserts a "Change-Id" entry to your commit message -which allows you to amend commits and have Gerrit track them as the same -change. +## Legal + +In order for your contribution to be accepted, it must comply with the Eclipse +Foundation IP policy. + +Please read the [Eclipse Foundation policy on accepting contributions via Git](http://wiki.eclipse.org/Development_Resources/Contributing_via_Git). + +1. Sign the [Eclipse ECA](http://www.eclipse.org/legal/ECA.php) + 1. Register for an Eclipse Foundation User ID. You can register [here](https://accounts.eclipse.org/user/register). + 2. Log into the [Accounts Portal](https://accounts.eclipse.org/), and click on the '[Eclipse Contributor Agreement](https://accounts.eclipse.org/user/eca)' link. +2. Go to your [account settings](https://accounts.eclipse.org/user/edit) and add your GitHub username to your account. +3. Make sure that you _sign-off_ your Git commits in the following format: + ``` Signed-off-by: John Smith ``` This is usually at the bottom of the commit message. You can automate this by adding the '-s' flag when you make the commits. e.g. ```git commit -s -m "Adding a cool feature"``` +4. Ensure that the email address that you make your commits with is the same one you used to sign up to the Eclipse Foundation website with. + +## Contributing a change + +1. [Fork the repository on GitHub](https://github.com/eclipse-mat/mat/fork) +2. Clone the forked repository onto your computer: ``` git clone + https://github.com//mat.git ``` +3. If you are adding a new feature, then create a new branch from the latest + ```develop``` branch with ```git checkout -b YOUR_BRANCH_NAME + origin/develop``` +4. If you are fixing a bug, then create a new branch from the latest + ```fixes``` branch with ```git checkout -b YOUR_BRANCH_NAME origin/fixes``` +5. Make your changes +6. Ensure that all new and existing tests pass. +7. Commit the changes into the branch: ``` git commit -s ``` Make sure that + your commit message is meaningful and describes your changes correctly. +8. If you have a lot of commits for the change, squash them into a single / few + commits. +9. Push the changes in your branch to your forked repository. +10. Finally, go to + [https://github.com/eclipse-mat/mat](https://github.com/eclipse-mat/mat) + and create a pull request from your "YOUR_BRANCH_NAME" branch to the + ```develop``` or ```fixes``` branch as appropriate to request review and + merge of the commits in your pushed branch. What happens next depends on the content of the patch. If it is 100% authored by the contributor and is less than 1000 lines (and meets the needs of the -project), then it can be committed to the main repository. If not, more steps -are required. These are detailed in the legal process poster: - -- +project), then it can be pulled into the main repository. If not, more steps +are required. These are detailed in the +[legal process poster](http://www.eclipse.org/legal/EclipseLegalProcessPoster.pdf). Eclipse Contributor Agreement: ------------------------------ @@ -79,11 +94,11 @@ Search for bugs: This project uses Bugzilla to track ongoing development and issues. -- +- Create a new bug: ----------------- Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome! -- +- diff --git a/README.md b/README.md index 6a81f6e80..e380a8889 100644 --- a/README.md +++ b/README.md @@ -14,8 +14,9 @@ Download Building locally ---------------- - git clone https://git.eclipse.org/r/mat/org.eclipse.mat - cd org.eclipse.mat/parent +Memory Analyzer can be build using Maven / Tycho. The maven build should be started from the parent directory. So, clone the repository, and then + + cd parent mvn clean install For detailed build documentation refer to @@ -30,17 +31,19 @@ Documentation Contributing ---------------- -- Check CONTRIBUTING.md in the root of the repository +- Check [CONTRIBUTING.md](CONTRIBUTING.md) in the root of the repository - [Developers](https://www.eclipse.org/mat/developers/) area on the MAT web site - [MemoryAnalyzer/Contributor Reference](http://wiki.eclipse.org/index.php?title=MemoryAnalyzer/Contributor_Reference) Wiki pages Issues: ---------------- -This project uses Bugzilla to track ongoing development and issues. +This project uses Githib issues to track ongoing development and issues. + +- [List of open issues](https://github.com/eclipse-mat/mat/issues?q=is%3Aopen+is%3Aissue) +- [Report an issue](https://github.com/eclipse-mat/mat/issues/new) -- [List of open issues](https://bugs.eclipse.org/bugs/buglist.cgi?product=MAT) -- [Report an issue](https://bugs.eclipse.org/bugs/enter_bug.cgi?product=MAT) +In the past the project used Bugzilla. The "archives" are available [here](https://bugs.eclipse.org/bugs/buglist.cgi?order=changeddate%20DESC%2Cpriority%2Cbug_severity&product=MAT&query_format=advanced) Contact: ----------------