This file describes how to participate in software development for
GNU Awk (gawk).
Copyright © 2017 Free Software Foundation, Inc.
This is Edition 0.7 of Participating in gawk Development.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with the Invariant Sections being “GNU General Public License”, with the Front-Cover Texts being “A GNU Manual”, and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled “GNU Free Documentation License”.
| • Preface: | Some introductory remarks. | |
| • Contributing: | How to contribute to gawk
development.
| |
| • Using Git: | Getting started with Git. | |
| • Configuring git: | Configuring Git. | |
| • Development without commit access: | How to work without commit access. | |
| • Development with commit access: | How to work with commit access. | |
| • General practices: | How things should usually be done. | |
| • Repo Maintenance: | Tips for keeping your repo clean. | |
| • Development Stuff: | Things you need to know to be a
gawk developer.
| |
| • Cheat Sheet: | Git command summary. | |
| • Resources: | Some further resources. | |
| • TODO: | Stuff still to do. | |
| • Index: | The index. | |
| • This Manual: | How to use this manual. | |
| • Conventions: | Typographical Conventions. | |
| • Acknowledgments: | Acknowledgments. | |
| • Reviewers: | A note to reviewers. | |
| • Push Pull: | The push/pull software development model. | |
| • Repo Copies: | What it means to have a copy of a repo. | |
| • Local Branches: | How to best use local branches. | |
| • Branches are state: | Branches represent development state. | |
| • Repo State: | The different branch types in the repo. | |
| • Local State: | Managing local branches. | |
| • Remotes: | What a “remote” is. | |
| • Cloning: | Cloning the repo the first time. | |
| • Switching Branches: | Moving from one branch to another. | |
| • Starting A New Branch: | Starting a new branch for development. | |
| • Undoing a change: | Throwing away changes. | |
| • Updating: | Keeping in sync with the upstream repo. | |
| • Rebasing: | Rebasing A Local Branch. | |
| • Merge Conflicts: | Dealing With Merge Conflicts. | |
| • Submitting Changes: | How to submit your changes. | |
| • Removing Branches: | Getting rid of unneeded branches. | |
| • Points to remember: | Things you need to keep in mind. | |
| • Initial setup: | Getting started with commit access. | |
| • ssh clone: | Cloning using an ‘ssh://’ URL. | |
| • Developing patches: | Developing patches. | |
| • Developing new features: | Developing new features. | |
| • Developing fixes: | Developing fixes. | |
| • Coding style: | Where to read up on the coding style. | |
| • Doing paperwork: | Legal stuff in order to contribute. | |
| • Tools: | Tools to have on your system for development. | |
| • GNU Tools: | The GNU Autotools. | |
| • Compilers: | A discussion of compilers that can be used. | |
| • Debugging: | Compiling for debugging. | |