So, I’d like to make some changes to status.net (an open source Twitter clone).
Let’s say I want to make it so that people can add fonts in their ‘tweets’, hypothetically.
But, I want to keep getting updates from the status.net people…Let’s say they make some changes and fix some security holes or add a new auxiliary feature.
So, I’ll want to
git clone <url to status.net repo>
Then, what? 🙂
How do I make my changes, store them in git properly, and merge(?) properly with new changes coming from the ‘net?
A sequence of commands, interwoven with “(make your changes here)” would help me a lot.
Thanks!
To make changes, you first put on your programmer hat and do what you always do. I really can’t help you there 🙂
Next, you’ll want to commit your changes. To commit, just say:
and type a descriptive message at the prompt. Note that “commit” in git does not make your changes public. It merely commits to your local copy of the repository; nobody sees it until you
git pushin the future.To merge changes other people made into your copy of the repository:
If you have direct access to the repository, you can make the
git commits you did earlier available to the public with:Otherwise, you can convert your commits into patches and send them to your friendly maintainer:
$ git log commit 75b17eeca0394e27759acf2f6b039851a5a28f98 Author: Your Name Date: Tue Aug 10 01:10:19 2010 -0400 Did something wonderful. commit f9f677a465a5746874dc2f2c86cc444ffa28a020 Author: Your Name Date: Fri Aug 6 04:06:01 2010 -0400 Fixed a horrible horrible error of mine. $ git show 75b17eeca0394e27759acf2f6b039851a5a28f98 > wonderful.diff $ git show f9f677a465a5746874dc2f2c86cc444ffa28a020 > fix.diffLastly, if you want to add new files to the repository, say:
To remove files, you can simply remove them like you normally would (with the
rmshell command), thengit commit -athe change.