Development/Git: Difference between revisions

From KDE TechBase
(Replaced content with "{{Moved To Community|Infrastructure/Git}}")
 
(68 intermediate revisions by 12 users not shown)
Line 1: Line 1:
This is the hub page for all information about the use of Git by KDE.
{{Moved To Community|Infrastructure/Git}}
 
This page is a work in progress where all new Git material is being organised.  Most of these sections will eventually be moved to their own pages.  Feel free to add stuff.
 
=External Git Resources=
Links to useful external sites about Git
 
==Official Documentation==
* http://git-scm.com/documentation
 
==Git for SVN Users==
* http://git-scm.com/course/svn.html
 
==Tutorials==
 
==Cheat Sheets==
* http://cheat.errtheblog.com/s/git
 
=Git Policies=
KDE policies on Git.  More generic development policies go elsewhere.
 
=Git Configuration=
 
Please see the [[Configuration|Configuration]] page.
 
=Git Recipes=
Brief recipes for common use cases.
 
=== Working with remote branches ===
 
Remote branches are branches created on the main KDE repository.  These may be a stable branch that you need to do bugfixes on, i.e. the 4.6 release, or a feature branch based on master.
 
git branch --track <local-branch> <remote-branch>
git checkout <local-branch>
git push origin <local-branch>:<remote-branch>
 
=== Working with stable branches ===
 
For kdelibs, kdepimlibs, kde-runtime, kate, konsole and kde-workspace, the remote stable branches are named as follows:
 
origin/KDE/4.6
 
For these modules, to set up a local stable branch to track the remote stable branch:
 
git branch --track KDE/4.6 origin/KDE/4.6
git checkout KDE/4.6
 
To then push changes to the remote stable branch:
 
git push origin KDE/4.6:KDE/4.6
 
In other projects the remote stable branches are named as follows:
 
origin/4.6
 
For these modules, to set up a local stable branch to track the remote stable branch:
 
git branch --track 4.6 origin/4.6
git checkout 4.6
 
To then push changes to the remote stable branch:
 
git push origin 4.6:4.6
 
=== Cherry Picking ===
 
Cheery picking is a way to copy a single commit from one branch to another.
 
When cherry picking between stable and unstable branches, use the following form:
 
git cherry-pick -e -x <original-commit>
 
==== Common Options ====
 
'''-e''' will allow you to edit the commit message to add any extra details and to change the BUG/CCBUG/FIXED-IN messages.
 
'''-x''' will automatically add the original commit number to the end of the commit message to enable better tracing and to simplify merging.  Only do this if the original commit was already published in a public repository, e.g. your are forward porting or back porting the patch.
 
'''-n''' will cherry-pick the changes but not commit them to the new branch.  This is very use full if you need to do further work on a commit.
 
=Git Tutorials=
More in-depth instructions in using Git
 
 
= Documentation Changes =
 
== Existing Pages For Review ==
Existing KDE pages about Git, SVN, and/or building KDE that need to be revised.  When revising pages try to split the generic development and revision control policies separate from Git specific stuff.  Do not refer to "the KDE Git Repository" but instead the "KDE Code Repository".  Lots of small simple pages that are less daunting to newbies and can be linked to from multiple locations are preferred to massive walls of text.
 
On community.kde.org:
* http://community.kde.org/Sysadmin/GitKdeOrgManual
* http://community.kde.org/20110213_GitWorkflowAgenda
* http://community.kde.org/20110213_GitWorkflowAgenda/StevesIdea
 
On techbase.kde.org:
* [[Getting Started]]
* [[Getting Started/Build/KDE4]]
* [[Getting Started/Build/KDE4.x]]
* [[Getting Started/Build/KDE4/Prerequisites]]
* [[Getting Started/Build/KDE4/Windows/subversion]]
* [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts]]
* [[Getting_Started/Build/kdesrc-build]]
* [[Getting Started/Sources/Anonymous SVN]]
* [[Getting_Started/Sources/Using_Subversion_with_KDE]]
* [[Getting Started/Sources/Amarok Git Tutorial]]
* [[Getting_Started/Set_up_KDE_4_for_development]]
* [[Getting_Started/Using_an_IDE_with_KDE4]]
* [[Policies/SVN_Commit_Policy]]
* [[Policies/SVN_Guidelines]]
* [[Development/Tools]]
* [[Development/Tutorials/Git]]
* [[Development/Tutorials/Git/BestPractices]]
* [[Development/Tutorials/Git/Intermediate]]
* [[Development/Tutorials/Git/Recipes]]
* [[Development/Tutorials/Git/Create a patch]]
* [[Development/Tutorials/Git/git-svn]]
* [[Development/Tutorials/Git/Basics]]
* [[Development/Tutorials/Git/KdeOnGit]]
* [[Development/Tutorials/Git/kde-qt]]
* [[Development/Tutorials/Git/Pushing]]
* [[Development/Tutorials/Git/decoding-git]]
* [[Projects/rekonq/Git_with_rekonq_HowTo]]
* [[Projects/Related/Subversion]]
* [[Contribute/Get a SVN Account]]
* [[Contribute/First Steps with your KDE SVN Account]]
 
There are also numerous other pages referring to "the KDE SVN/subversion repositories" which should be replaced with the generic "KDE code repositories".
 
There are also numerous translated pages which will need to be updated once the original pages are completed.
 
== New Page Structure ==
 
* [[Getting_Started]]
* [[Getting_Started/Build]]
* [[Getting_Started/Build/Environment]]
* [[Getting_Started/Build/Requirements]]
* [[Getting_Started/Build/Qt]]
* [[Getting_Started/Build/KdeSupport]]
* [[Getting_Started/Build/Windows]]
* [[Getting_Started/Build/Mac_OS_X]]
* [[Getting_Started/Run]]
* [[Getting_Started/Run/Shell]]
* [[Getting_Started/Run/Nested_Session]]
* [[Getting_Started/Run/Full_Session]]
 
== For Deletion ==
 
The following pages can now be deleted:
* [[Getting_Started/Build/KDE4/Generic]]
* [[Build_requirements]]
* [[Build/Stories]] and child pages - Belong somewhere else, either distro wiki or community.k.o
* [[Build/KDE4/Errors]]
* [[Getting_Started/Build/FAQ]]
* [[Getting_Started/Build/Coexisting_Versions]]
* [[Development_user]]
* [[Getting_Started/Build/KDE4_Alpha_1]]
* [[Getting_Started/Build/KDE4_Alpha_2]]
* [[Getting_Started/Build/compilationfaq.html]]
* [[Getting_Started/working_kdesrcbuildrc]]
* [[Getting_Started/working_kdesrcbuildrc/4.6]]
* [[Getting_Started/working_kdesrcbuildrc/4.6/Kubuntu_10.04_qt-copy]]
* [[Getting_Started/working_kdesrcbuildrc/4.6/]]
* [[Getting_Started/working_kdesrcbuildrc/4.6//Kubuntu_10.04_qt-copy]]
* [[Getting_Started/Build/KDE4/Mac_OS_X_10.5_issues]]
* [[Getting_Started/Build/KDE4/Cygwin]]
* [[Getting_Started/Distributions/openSUSE_Unstable]]
* http://techbase.kde.org/Growth_hormone_human_prescription_-_buy_hgh_191_-_hgh_injections_in_coppell_texas
* http://techbase.kde.org/History_of_soma_drug_-_shipping_soma_to_louisiana_-_buy_soma_com

Latest revision as of 11:47, 11 March 2016

This page is now on the community wiki.