Activity Team/Git FAQ: Difference between revisions

Dfarning (talk | contribs)
m cut misc section
Dfarning (talk | contribs)
m reduce header level
Line 1: Line 1:
<noinclude>{{GoogleTrans-en}}{{TeamHeader|Activity Team}}</noinclude>
<noinclude>{{GoogleTrans-en}}{{TeamHeader|Activity Team}}</noinclude>
== Git and Gitorious FAQs ==
== Help! I suddenly can't connect to Gitorious! ==
=== Help! I suddenly can't connect to Gitorious! ===
:The [http://osuosl.org/ OSUOSL], which hosts Gitorious, has an aggressive IP blacklist policy.  If you once were able to push but now cannot, send an email to support@osuosl.org requesting that your IP be removed from the blacklist.
:The [http://osuosl.org/ OSUOSL], which hosts Gitorious, has an aggressive IP blacklist policy.  If you once were able to push but now cannot, send an email to support@osuosl.org requesting that your IP be removed from the blacklist.


=== How do I create an account on git.sugarlabs.org? ===
== How do I create an account on git.sugarlabs.org? ==


:[http://git.sugarlabs.org/users/new Register] using the link on the upper right menu on the Home Page.
:[http://git.sugarlabs.org/users/new Register] using the link on the upper right menu on the Home Page.


===How do I migrate a project to git.sugarlabs.org? ===
==How do I migrate a project to git.sugarlabs.org? ==


:Please follow the [[Activity Team/How_to_migrate_from_OLPC|instructions here]] to first set up your project's entry in Gitorious.
:Please follow the [[Activity Team/How_to_migrate_from_OLPC|instructions here]] to first set up your project's entry in Gitorious.


=== How do I create a new project? ===
== How do I create a new project? ==


:First set up the project in gitorious as per above.
:First set up the project in gitorious as per above.
Line 32: Line 31:
:to avoid opening an editor.
:to avoid opening an editor.


=== How do I create a fork of an existing project? ===
== How do I create a fork of an existing project? ==


:Click on the Repositories Tab of the project page in Gitorious. Click on "Mainline". A link will appear on the right-hand side of the page saying, "Clone repository".
:Click on the Repositories Tab of the project page in Gitorious. Click on "Mainline". A link will appear on the right-hand side of the page saying, "Clone repository".
Line 54: Line 53:
     url = gitorious@git.sugarlabs.org:yourproject/yourbranch.git
     url = gitorious@git.sugarlabs.org:yourproject/yourbranch.git


=== How do I request a merge? ===
== How do I request a merge? ==


:Click on the Repositories Tab of the project page in Gitorious. Click on "Mainline". A link will appear on the right-hand side of the page saying, "Request merge".
:Click on the Repositories Tab of the project page in Gitorious. Click on "Mainline". A link will appear on the right-hand side of the page saying, "Request merge".


=== How do I add a committer? ===
== How do I add a committer? ==


:Click on the Repositories Tab of the project page in Gitorious. Click on "Mainline". A link will appear on the right-hand side of the page saying, "Add Committer".
:Click on the Repositories Tab of the project page in Gitorious. Click on "Mainline". A link will appear on the right-hand side of the page saying, "Add Committer".


=== How do I get translations for my project? ===
== How do I get translations for my project? ==


# Use the gettext mechanism for your stings.
# Use the gettext mechanism for your stings.
Line 69: Line 68:
# Add User Pootle to the list of committers on your project.
# Add User Pootle to the list of committers on your project.


=== What if my project has a binary blob? ===
== What if my project has a binary blob? ==


:You may have to use the --force flag.
:You may have to use the --force flag.
Line 75: Line 74:
  git push -fv
  git push -fv


=== How do I stay in sync with translations being pushed from the Pootle server? ===
== How do I stay in sync with translations being pushed from the Pootle server? ==


:Periodically—in my experience, on Fridays—updates to the project .po files are pushed from the Localization team.
:Periodically—in my experience, on Fridays—updates to the project .po files are pushed from the Localization team.
Line 85: Line 84:
:'''Note:''' After every major release, a new branch is created on the Pootle server, e.g., Fructose-0.82 and Fructose-0.84. The Localization team may push translations to any or all of the corresponding branches of your project. Changes to your master branch are not necessarily intended for the release branches.
:'''Note:''' After every major release, a new branch is created on the Pootle server, e.g., Fructose-0.82 and Fructose-0.84. The Localization team may push translations to any or all of the corresponding branches of your project. Changes to your master branch are not necessarily intended for the release branches.


=== How do I update the Tag field in Gitorious? ===
== How do I update the Tag field in Gitorious? ==


  git tag -m "Release 36" v36 HEAD
  git tag -m "Release 36" v36 HEAD
  git push --tags
  git push --tags


=== As a maintainer, how do I merge a patch? ===
== As a maintainer, how do I merge a patch? ==


:git-pull does a combination of fetch and merge, so to merge a patch...
:git-pull does a combination of fetch and merge, so to merge a patch...
Line 96: Line 95:
  git pull git://git.sugarlabs.org/myproject/myproject-clone.git master
  git pull git://git.sugarlabs.org/myproject/myproject-clone.git master


===How do I select which branch I am working on?===
==How do I select which branch I am working on?==


  git checkout master
  git checkout master
Line 102: Line 101:
  git checkout sucrose-0.84
  git checkout sucrose-0.84


===How do I merge changes from master into a branch?===
==How do I merge changes from master into a branch?==


  git checkout sucrose-0.84
  git checkout sucrose-0.84
  git rebase master
  git rebase master


=== How do I generate a patch? ===
== How do I generate a patch? ==
  git diff > blah.patch
  git diff > blah.patch
:or
:or
Line 116: Line 115:
It is preferable that you generate your patch from the root directory of your project.
It is preferable that you generate your patch from the root directory of your project.


===How do I send a patch to the developers?===
==How do I send a patch to the developers?==


  git send-email --to=sugar-devel@lists.sugarlabs.org 0001*.patch
  git send-email --to=sugar-devel@lists.sugarlabs.org 0001*.patch