Skip to content

Instantly share code, notes, and snippets.

@spinda
Last active August 29, 2015 14:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save spinda/282452390bf6d6fbcc5b to your computer and use it in GitHub Desktop.
Save spinda/282452390bf6d6fbcc5b to your computer and use it in GitHub Desktop.
Le Code Civil français, sous Git

(English translation of Le Code Civil français, sous Git)

The French Civil Code, in Git

Introduction

Here is a little hack, the result of an afternoon of code: the Civil Code in Git.

If one considers the law as a set of texts modified by the various assemblies of the state, one can consider them as a set of text files created collaboratively.

The members of government, and the various assemblies, work in collaboration on these files, which, once voted for, are written into the Code (here the Civil Code).

But there is another category of people who, for fifty years now, have worked on text files collaboratively, and excel at it: developers. They have created extremely effective collaboration and tracking tools for working on source code. The most popular to date is Git.

Git not only allows you to view the source at a time T (snapshot) but above all to easily visualize the changes in the source (commits). In the analogy to the Civil Code, this permits the tracking of the changes made by a law.

Combine all of this with the Open Source philosophy, and the second part of the analogy is made: the modification of source code in an open and public fashion.

Finally, the Civil Code is a part of the source code of France. And source code belongs in source control. Period.

Example

Here is for example the commit which authorizes marriage for all: b805ecf05a86162d149d3d182e04074ecf72c066

This is more readable than, for example (cf http://www.assemblee-nationale.fr/14/ta/ta0120.asp):

"At article 165 of the same code, the word: 'before' is replaced by the words: 'during a republican ceremony by'."

Technical Note

Git dates are based on the Unix epoch (01/01/1970), changes before these dates are all dated 01/01/1970, with incremental seconds; the commit message gives the correct date.

LICENSE

All files are licensed under Creative Commons (https://creativecommons.org/licenses/by/4.0/).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment