👍🎉 Thanks for taking the time to contribute! 🎉👍
Found a typo in this website? Interested in giving your thoughts on existing pages, adding a post, tutorial, new feature or enhancement?
The website https://gnss-sdr.org lives in a GitHub repository. You can contribute in several ways:
-
Commenting (through your Google, Facebook or Twitter account, or just open a new profile at Disqus) in the boxes such as the one at the bottom of this page. Moderation will be applied only in cases of flagrant off-topic or inappropriate style. See our code of conduct.
-
Sharing the content in your favorite social network.
-
Checking existing open issues or submitting a new one.
-
Forking this repository, working on the changes in your own repository, and making a pull request.
This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to carles.fernandez@cttc.es.
-
If you still have not done so, create your personal account on GitHub.
-
Fork this repository from GitHub. This will copy the whole website repository to your personal account.
-
Then, go to your favorite working folder in your computer and clone your forked repository by typing (replacing
YOUR_USERNAME
by the actual username of your GitHub account):$ git clone https://github.com/YOUR_USERNAME/geniuss-place
-
Your forked repository https://github.com/YOUR_USERNAME/geniuss-place will receive the default name of
origin
. You can also add the original website repository, which is usually calledupstream
:$ cd geniuss-place $ git remote add upstream https://github.com/gnss-sdr/geniuss-place
To verify the new upstream repository you have specified for your fork,
type git remote -v
. You should see the URL for your fork as origin
,
and the URL for the original repository as upstream
:
$ git remote -v
origin https://github.com/YOUR_USERNAME/geniuss-place.git (fetch)
origin https://github.com/YOUR_USERNAME/geniuss-place.git (push)
upstream https://github.com/gnss-sdr/geniuss-place (fetch)
upstream https://github.com/gnss-sdr/geniuss-place (push)
The required software can be installed through RubyGems, which is probably already installed in your system. If this is not the case, please check how to install Ruby.
Install Bundler, a tool for managing the required dependencies:
$ gem install bundler
Clone your forked repository of this website and install the required
dependencies (replacing YOUR_USERNAME
by your actual GitHub user name):
$ git clone https://github.com/YOUR_USERNAME/geniuss-place/
$ cd geniuss-place
$ bundle install
After all gems are installed, the following command will deploy the website and run a local server at http://127.0.0.1:4000/
$ bundle exec jekyll serve -w --config _config.yml,_config.dev.yml
You should see something as:
Configuration file: _config.yml
Configuration file: _config.dev.yml
Source: /path_to_cloned_repo/geniuss-place
Destination: /path_to_cloned_repo/geniuss-place/_site
Incremental build: disabled. Enable with --incremental
Generating...
Jekyll Feed: Generating feed for posts
done in 4.017 seconds.
Auto-regeneration: enabled for '/path_to_cloned_repo/geniuss-place'
Server address: http://127.0.0.1:4000/
Server running... press ctrl-c to stop.
Just point your browser to http://127.0.0.1:4000/ in order to enjoy this website without the need for an Internet connection. Some features such as comments might not work.
If you already forked and cloned this repo before, and then have pulled from upstream, be sure to keep your gems updated with the exact required versions by re-running:
$ bundle install
Pro Tip: if you want to modify JavaScript (under assets/js
),
you will need to install Node.js, cd
to
the root of your project, and run $ npm install
to get all the
dependencies. If all gone well, then running npm run build:js
will
compress/concatenate _main.js
and all plugin scripts into
main.min.js
. Thus, upon a change on JavaScript content, run:
$ npm run build:js
in order to update the main.js
script and implement the changes on
the website.
When start working on a new improvement, please always branch off
from main
. Open a new branch and start working on it:
$ git checkout -b my_feature
Now you can do changes, add files, do commits (please take a look at how to write good commit messages!) and push them to your repository:
$ git push origin my_feature
If there have been new pushes to the main
branch of the upstream
repository since the last time you pulled from it, you might want to put
your commits on top of them (this is mandatory for pull requests):
$ git pull --rebase upstream main
When the contribution is ready, you can submit a pull
request. Head to your
GitHub repository, switch to your my_feature
branch, and click the
Pull Request button, which will do all the work for you.
Once a pull request is sent, the Developer Team can review the set of changes, discuss potential modifications, and even push follow-up commits if necessary.
For more details about Git usage, please check out our tutorial.
Thanks for your contribution to GNSS-SDR!