Forum: Cfengine Help
Subject: Re: Cfengine Help: Once more unto the code bridge: repository
Author: zzamboni
Link to topic: https://cfengine.com/forum/read.php?3,19727,19751#msg-19751

Mark Burgess Wrote:
-------------------------------------------------------
> 4. A simple easy to read interface (I found github
> mostly noise and
> couldn't actually find the code in it!!)

I would like to expand on this. GitHub is a many-faceted tool, so it depends on 
where and how you look at it. Looking at the "raw" page for the repository that 
Aleksey set up (https://github.com/cfengine/contrib ), I agree it may be a bit 
intimidating for someone who is not very familiar with github. It's an 
interface equivalent to the "project" pages on sourceforge.net, bitbucket.org, 
or any other code-hosting site. It's meant mostly for developers who are 
familiar with how things work.

However, github also has built-in wikis associated with each project, which can 
be much more user-friendly. See here for an example: 
https://github.com/mojombo/jekyll/wiki . The great thing about wikis in github 
(IMO, as a developer) is that they are git repositories in themselves, which 
means they are easy to check out and update offline, without having to go 
through a web interface.

Additionally, github has a feature called "GitHub Pages" 
(http://pages.github.com/ ), which essentially allows you to host arbitrary 
content associated with a project or user. For example, my main web page at 
http://zzamboni.org/ is hosted by github, its contents is automatically grabbed 
from my repository at https://github.com/zzamboni/zzamboni.github.com . Some of 
my project pages, such as http://zzamboni.org/grabcartoons/ or 
http://zzamboni.org/copperexport/ are also hosted by github, and their content 
is served from a branch in the corresponding code repositories at 
https://github.com/zzamboni/grabcartoons and 
https://github.com/zzamboni/copperexport respectively. And GitHub even makes it 
possible to host the pages at custom domains, just by placing a special file in 
the repository containing the domain at which the page should be hosted.

And finally, lest I forget, GitHub also has a code-snippet-sharing tool at 
http://gist.github.com/. This is where I host most of the code that I include 
in my blog, since it allows me to embed the snippets, nicely formatted and 
syntax-highlighted.

I'm not saying that we should use github, since it comes with the implicit 
requirement that people use git for version control, and as much as I like it, 
it may not be everyone's cup of tea, so to speak (although github supports a 
subversion interface to repositories: 
https://github.com/blog/644-subversion-write-support , you get the most 
benefits when you use git directly).

What I am saying is that it is entirely possible (and quite easy) to create 
nice-looking pages on github, nicely integrated with custom domains. As I 
suggested some time ago, for example, it would be entirely possible for 
Cfengine AS to host the COPBL page at (for example) copbl.cfengine.org, with a 
web page that looks exactly the same as it does today, and with an associated 
github repository that people could checkout, and if desired, fork and 
submitted as "pull requests". Of course, the repository owner decides which 
pull requests are merged back into the main repository, but it's a nice way of 
handling code contributions. People can even comment on the submitted patches, 
providing a built-in discussion forum that is directly associated with each 
contribution.

Incidentally, the GitHub people just released a "GitHub Features" page that 
nicely describes most of what's available: https://github.com/features/

And before you ask, I don't work for GitHub, I'm just an extremely satisfied 
user :)

_______________________________________________
Help-cfengine mailing list
Help-cfengine@cfengine.org
https://cfengine.org/mailman/listinfo/help-cfengine

Reply via email to