aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTING.md65
-rw-r--r--DEVELOPING93
2 files changed, 65 insertions, 93 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..b71829c
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,65 @@
+# Contributing to Jim
+
+Please take a moment to review this document in order to make the contribution
+process easy and effective for everyone involved.
+
+Following these guidelines helps to communicate that you respect the time of
+the developers managing and developing this open source project. In return,
+they should reciprocate that respect in addressing your issue, assessing
+changes, and helping you finalize your pull requests.
+
+## Bug reports and Feature requests
+
+The [issue tracker](https://github.com/msteveb/jimtcl/issues) is the preferred channel for bug reports
+and features requests.
+
+## Discussions
+
+If you wish to open a broader topic for discussion, consider using a [discussion topic](https://github.com/msteveb/jimtcl/discussions)
+
+## Pull requests
+
+[Pull requests](https://github.com/msteveb/jimtcl/pulls) are always welcome
+
+If you have never created a pull request before, [Here is a great tutorial](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github)
+on how to create a pull request.
+
+1. [Fork](http://help.github.com/fork-a-repo/) the project, clone your fork,
+ and configure the remotes:
+
+ ```
+ # Clone your fork of the repo into the current directory
+ git clone https://github.com/<your-username>/<repo-name>
+ # Navigate to the newly cloned directory
+ cd <repo-name>
+ # Assign the original repo to a remote called "upstream"
+ git remote add upstream https://github.com/msteveb/jimtcl.git
+ ```
+
+2. If you cloned a while ago, get the latest changes from upstream:
+
+ ```
+ git checkout master
+ git pull upstream master
+ ```
+
+3. Create a new topic branch (off the main project development branch) to
+ contain your feature, change, or fix:
+
+ ```bash
+ git checkout -b <topic-branch-name>
+ ```
+
+4. Make sure to update, or add to the tests when appropriate.
+ Run `make test` to check that all tests pass after you've made changes.
+
+5. If you added or changed a feature, please add documentation to jim_tcl.txt.
+
+6. Push your topic branch up to your fork:
+
+ ```bash
+ git push origin <topic-branch-name>
+ ```
+
+7. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/)
+ with a clear title and description.
diff --git a/DEVELOPING b/DEVELOPING
deleted file mode 100644
index 5156b28..0000000
--- a/DEVELOPING
+++ /dev/null
@@ -1,93 +0,0 @@
-Working on Jim
-==============
-
-Jim's sources are kept in Git Version Control System. Global repository of
-Jim project is placed on this Web site:
-
- http://repo.or.cz/w/jimtcl.git
-
-There are two ways of contributing to Jim project. First is suited for
-one-time fixes and small corrections. The second is more appropriate
-for long-term contributors interested in Jim internals.
-
-Small changes
-=============
-
-For small modifications, procedure of preparing a traditional 'patch'
-is enough. In order to prepare a patch, you first have to obtain the
-most recent copy of Jim Tcl. This can be done with following command:
-
- git clone http://repo.or.cz/r/jimtcl.git
-
-After entering newly created directory you can easily correct/fix/modify
-files. Once finished, patch can be easily generated:
-
- git diff > my_patch_fixing_x_y.patch
-
-If working without Git system, you'll have to backup files first, modify
-the original files and obtain a patch manually:
-
- cp jim.c jim.c.ORIGINAL
-
- [...] <- modifications go here
-
- diff -u jim.c.ORIGINAL jim.c > my_patch_fixing_z.patch
-
-Bigger changes
-==============
-
-In order to help extending and correcting Jim in a long term basis, one
-needs to create separate fork of Jim project and maintain his changes in a
-separate copy of a repository.
-
-By visiting this site, you'll have a chance to fork a project. This can
-be easily done with "fork" link. Form that will show up next refers to
-the project that is about to be started. The only thing that has to be
-taken care of is the project mode -- it should be "push mode".
-
-Once the project is created one must add a user that will actually
-start committing new files to the repo. It can also be done through the
-WWW interface, so nothing more is necessary.
-
-Once finished with setting up a project on the WWW panel, one can
-start playing with actual import of the files. In order to obtain copy
-of Jim sources, we have to clone the repository:
-
- git clone http://repo.or.cz/r/jimtcl.git
-
-Now, we must push fresh copy of Jim to your project URL:
-
- git push <URL> master
-
-So for example for me it was:
-
- git push ssh://repo.or.cz/srv/git/jimtcl/wkoszek.git master
-
-In order to add file we type "git add <file>". For remove, we do "git rm
-<file>". To remove all local changes that aren't in a repository you do "git
-reset --hard HEAD". Once inserted, files have to be committed with "git commit
--a". Once done with commits for today, "git push" can be used to propagate
-changes from your local disk to the remote repository.
-
-Right now you can verify whether this works by trying to clone your
-project's repository somewhere else, this time using anonymous HTTP
-access:
-
- git clone http://repo.or.cz/r/jimtcl/wkoszek.git
-
-Review, testing and publishing
-==============================
-
-Notification of work that can be considered finished is more than welcome on
-Jim-devel mailing list:
-
- http://jim.tcl.tk:8080/cgi-bin/mailman/listinfo/jim-devel
-
-Patches prepared with the procedures presented above are welcome. Before
-submitting patches, you can verify that your changes didn't bring any
-regressions to the Jim. In order to do so, sample regression tests have
-been implemented. You can execute them by typing:
-
- make test
-
-All tests should succeed.