66

What's the difference between say:

"The project will be on GitHub",

"The project will be in GitHub" and

"The project will be at GitHub"?

68

Github's own preference seems to be on:

Host and manage your code on GitHub.

I can't think of a specific rule for it, but on feels right to me. In English, we generally seem to use on for things that use a method of broadcast or distribution. Something can be on the air, which might mean that it's on TV or on the radio; we might see an interview on the nightly news, or news might arrive on the wire. (This is not the only way we use on, of course, but I'm only discussing communication right now.)

In seems to be used more for means of communication that something could literally be inside of: you might read something in a book or a newspaper, or a fact could be found in a report.

At is used more for locations, addresses, or time: at the press conference, or at nine o'clock. We would say that the code is at http://github.com/blahblahblah to specify an exact address. (Credit to @Sarah for pointing that out!)

  • 1
    In line with your physical location suggestion, a plausible thing would be a project hosted at Github would refer to some project involving physically meeting at their offices (or sponsored by them in the abstract), like, "Our dev bootcamp is hosted at Github" (in their office space) or "We are working on infrastructure improvements at Github." (working for them). – Paul May 4 '16 at 22:40
  • 17
    Another for at could be "you can find my code at github.com/blahblahblah" – Sarah May 5 '16 at 2:59
  • 4
    Ooh, @Sarah makes a very good point, lining up nicely with stangdon's explanation of "at": when specifying the actual URL of your project, "at" is much more common ("it's hosted at github.com/me/my-project"), since you're relating a specific (universal resource) location, rather than the platform as a whole ("it's hosted on GitHub"). – Ken Bellows May 5 '16 at 11:11
  • @Sarah - A very good observation! I've added it to my answer. – stangdon May 5 '16 at 11:43
  • 2
    I'd agree with this - "on" is used almost exclusively for internet/websites. On Facebook, on The Internet, on Instagram, on Twitter, on Google etc. We'd never say "I found this picture at Facebook" – Jon Story May 6 '16 at 13:45
23

Most references use on GitHub.

Edit on GitHub (Node.js)
Contribute on GitHub (Ruby on Rails)
Fork me on GitHub (D3)

Maybe because things are usually said to be on a server and GitHub repositories are kept on server farms. Repositories on GitHub get cloned (downloaded), and then modifications get pushed back to GitHub.

These days, at gets used more for email addresses as in me(at)gmail.com to avoid robot scraping, and URLs: "enroll at open_university.org".

GitHub is not an enclosure, per se, so in may not be appropriate when speaking of the platform. In does get used when referring to a specific repository:

Additional examples can be found in the interesting_project/doc repo on GitHub.
(in a specific repository, on GitHub)

  • 3
    What does GitHub not being "an enclosure" have to do with anything? Sure, in can be used to mean "inside an enclosure," but it has plenty of other usages and meanings: in trouble, in the heat of battle, in a moment, in love, in a fight, in a movie, in sickness and in health, say it in English. – J.R. May 4 '16 at 22:32
  • I agreed, but GitHub is a location so was just pointing that out that it wasn't something like in the museum – Peter May 5 '16 at 3:29
  • 3
    @J.R. I'd argue that all of those things are enclosures, in the context of the metaphors being used. Some could be expanded to be more explicit, e.g. "I'm deep in trouble", "I'm in the middle of a fight", etc. For some, I think the analogy is to being submersed by some influencing force or circumstance (trouble, love, the heat of the moment); for others, I think it's more of a reference to an enclosing context, e.g. "say it [with words that are contained] in English", "that actor can be seen in this movie". Thoughts? – Ken Bellows May 5 '16 at 11:19
  • 1
    @Peter As Sarah pointed out on stangdon's answer, one use of at that's still quite common is to refer to specific URLs, e.g. "vim is hosted at github.com/vim/vim"; your answer is still very correct, but I thought it was worth mentioning – Ken Bellows May 5 '16 at 11:22
  • @kenbellows - I'd "argue" that in has more than one meaning – quite a few, in fact. The main reason I left my initial comment was because I didn't want learners to read the original answer here and come away thinking, "If it's not enclosed in something, in must be the wrong preposition." That said, I also agree with you: many of the nuances of in are some shade of "immersed in" or "surrounded by." A dictionary might list several meanings for in, but many of them have some degree of overlap. – J.R. May 5 '16 at 21:48
11

When talking about saving digital content, the usual metaphor is on. Data is hosted on Github, it is saved on your hard disk, you can save it on a flash drive etc.

Same goes for hosting. Web pages are hosted on a server.

When we refer to the actual container, we usually use in. Data is stored on the hard drive, but in a file in the file system.

When you code is hosted on Github, it is actually in a git repository. But that git repository is hosted on GitHub, so by extension, the code is hosted on GitHub.

At usually means something else. You could say "You can find my project at GitHub". That means you can find the project by visiting GitHub, and you find it listed there. But that does not say anything about the storage location. You can find a link to something else at any website, but that does not mean it is on the same website.

5

The choice of In, On, or At is a personal one because it depends upon your understanding of what the GitHub service does for you. In my opinion, for clear communication regarding a service, it is often best to align your view of that service with the calls to action you see a service provider using when they discuss their service. I will use calls to action to describe how In, On, and At can be used.

GitHub sees themselves as a platform for software development, so they're going to implore you to host your software development project there. GitHub will be an active host. You are encouraged to build your software atop what GitHub provides; you build on the GitHub platform.

on can also be used to denote a place where work gets done. This makes on a very strong choice for calls to action since one's work is often highly valued in western culture. "Fork me on GitHub!"

If GitHub saw themselves as a data storage container with little/no additional value added like Amazon S3 cloud storage, then in might have been more appropriate. in implies the value lies primarily in what you are storing rather than the service or platform that provides the storage. An offer of trust and security often comes along with in, banking comes to mind. "Store your pictures in GitHub!"

I'd probably choose "with" instead of "in" in calls to action because with indicates a partnership. with should help boost sales in the otherwise boring case of web-based file storage, for example. "Store your pictures with GitHub!"

If GitHub saw themselves primarily as a user destination on the web like for developer events or teaching seminars, at might have been used. Time, location and your presence go along with at.

If your data stored at GitHub were somehow a proxy for you, say a ticket reservation system, then at would be the perfect choice. "Reserve your tickets at GitHub!"

2

In many cases where a preposition does not relate to a literal physical relation ("the cat is on the mat", "the soup is in the bowl") there's little logical reason why one is often favoured over the other, and the preferred use is more a matter of convention and tradition than anything else.

Since source hosting services are relatively new, there hasn't been much time for any such tradition to build up, so it comes down to metaphors.

At metaphorically considers GitHub to be a location. This is a reasonable metaphor often used of websites, and so a reasonable use.

In metaphorically considers GitHub to be a container. This is a reasonable metaphor often used of data storage, and so a reasonable use.

That storage metaphor is also often used with on. As well as that, on can metaphorically consider GitHub to be a platform. This is a reasonable metaphor for online services that while not as clear as the other two, is growing in popularity, and so a reasonable use.

As such all three could be reasonably used. That on is favoured by GitHub and many of its users, and that the platform metaphor is also favoured by them, makes it the one to go for.

  • Hmm, I've always used on for data storage as well ("it's on my computer", "on server X", "on a CD", &c.), is that not correct? – grawity May 5 '16 at 10:02
  • @grawity no, on is used there too, perhaps more often these days than in. At the time of writing that sentence I was considering only in and at the time of writing about on I was considering GitHub's main metaphor (that it's a platform to enable sharing, rather than just a place stuff is put) so I neglected the fact that on also fits in the overlap. I shall edit to include that also. – Jon Hanna May 5 '16 at 10:15
1

"On" is because GitHub is a platform and the metaphor extends to what's "on" that platform.

"The project is on GitHub."

"At" would be more appropriate for the metaphor of a [web]site.

"You can find this information at www.infosite.com."

"By" would be more appropriate if the focus was on GitHub as an organization/company.

"My website is hosted by GreenHost."

"In" would be appropriate if the metaphor was that of a storage container/vault, which is actually used for an individual "repository."

"In this repository, we see X, while in that repository, we see Y."

However, since the dominant metaphor for GitHub (as well as Facebook etc.) is that of a "platform," the preposition is "on."

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.