From Fedora Project Wiki

m (typo)
m (Minor changes)
Line 27: Line 27:
as if they were applied to the latest on the remote branch.
as if they were applied to the latest on the remote branch.


= Oops, How to I Revert? =
= Oops, How do I Revert? =


To revert your changes:
To revert your changes:
<pre>
<pre>
git checkout -f                    # All changes
git checkout -f                    # All changes
git checkout -f Medusa/setup.py    # A specific file
git checkout -f autoqa.spec        # A specific file
</pre>
</pre>


Line 70: Line 70:
</pre>
</pre>


= References =


 
* http://www.kernel.org/pub/software/scm/git/docs/user-manual.html
[[Category:AutoQA]]
[[Category:AutoQA]]

Revision as of 19:02, 7 January 2010

Checkout The Code

It's always easier if you start from a git checkout, as git makes it very easy to do patches. You won't have to run "patch" manually and stuff like that, nor will you have to maintain a separate tree.

yum install git
git clone git://git.fedorahosted.org/autoqa.git

Keeping In Sync

If you want to update your checkout to the latest git source, from any branch:

cd autoqa
git fetch origin
git rebase origin/master

What Changed?

Now, make your changes. To see the differences you've made since last commit:

git diff HEAD

At any time when you want to stay up to date with what's going on in the main repo you can do the fetch/rebase step as many times as you want. This makes all your changes be modified as if they were applied to the latest on the remote branch.

Oops, How do I Revert?

To revert your changes:

git checkout -f                     # All changes
git checkout -f autoqa.spec         # A specific file

Submitting Patches For Review

Once you have the checkout working like you want, generate a list of patches and submit for review to autoqa-devel@lists.fedorahosted.org.

Record all the changes:

 git commit -a 

Generate a list of patches between your local checkout and a remove branch called origin/master, type:

git format-patch origin/master

This will output a list of one or more patches that can be downloaded and applied by developers with "git am".

Now, write a high level summary of your changes:

cat <<EOF> msg
Subject: My favorite patches

Hello,

Included are several packages which implement feature X and have been thoroughly tested.

Thanks!
EOF

Finally, send these patches to autoqa-devel@lists.fedorahosted.org for review:

yum install git-email
git send-email --no-chain-reply-to --quiet --to autoqa-devel@lists.fedorahosted.org msg *.patch

References