This tool allows publishing pristine views of an annotated git mono-repository. An annotated git repository contains NODISTRIBUTE empty files that mark directories that must not be visible in a pristine copy.
Use ciao publish list to list publishable bundles from the Ciao devel repository (either the main ciao or some bundles at bndls/). E.g.:
$ ciao publish list
Publishing code is performed by the commit and push operations. Use the help option to view other possible commmands.
Example for publishing the bundle at the current directory (when run at the Ciao root directory the special ciao bundle is selected, which contains core and builder):
$ ciao publish pull $ ciao publish commit << (please review commits) >> $ ciao publish push
A command may be followed by a target bundle name to specify a different bundle. Example for publishing ciao_emacs:
$ ciao publish pull ciao_emacs $ ciao publish commit ciao_emacs << (please review commits) >> $ ciao publish push ciao_emacs
The first time that commit is performed, it will require a first commit number. This is not needed for squash.
You can use the --all option to perform a command on all publishable bundles (see --help for more info), or use shell scripts.
Examples on all bundles:
<< Consult the status of all publishable bundles >> $ ciao publish status --all << Pull all public repositories (previous to publishing) >> $ ciao publish pull --all << Commit all publishable changes >> $ ciao publish commit --all << Push to the public repository >> $ ciao publish push --all
Other directories:
ci-scripts/ Scripts for CI ci-status/ Scripts for checking the status of CI etc/ciao-download-stats.sh Download statistics
Assume that Bob maintains the private Ciao repository and Alice wants to contribute to it. This is the typical workflow for contributing to the project preserving authorship:
$ git format-patch HEAD^n # where n is the number of commits not in master
$ git am < 0001-*.patch $ git am < 0002-*.patch $ ...
You can follow the same steps as in the previous section, just obtaining the patches from this custom URL https://github.com/ciao-lang/ciao/pull/NUMBER.patch.