Development/Git: Difference between revisions

From KDE TechBase
(Marked this version for translation)
(Marked this version for translation)
(8 intermediate revisions by 3 users not shown)
Line 3: Line 3:
<!--T:1-->
<!--T:1-->
This is the hub page for all information about the use of Git by KDE.
This is the hub page for all information about the use of Git by KDE.
<!--T:2-->
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.


== KDE and Git == <!--T:3-->
== KDE and Git == <!--T:3-->


<!--T:4-->
<!--T:4-->
This section provides details on using the KDE Git infrastructure.
This section provides details on using the KDE Git infrastructure.  This is intended for use by KDE developers to find out how KDE uses Git and how to set up Git for use with KDE.
 
<!--T:5-->
The [http://community.kde.org/Sysadmin/GitKdeOrgManual KDE Git System Administrators Manual] is a useful resource for more details on the technical implementation of the KDE Git infrastructure.
 
<!--T:91-->
For more information on how the KDE Git Repositories are organized, please see the [[Getting_Started/Sources|Sources]] page or the [https://projects.kde.org/projects KDE Git Projects] page.
 
<!--T:92-->
Please note that some KDE modules are still using SVN, for more details read the [[Getting_Started/Sources/Using_Subversion_with_KDE|Using Subversion with KDE]] page.


</translate>
[http://community.kde.org/Sysadmin/GitKdeOrgManual <translate><!--T:5-->
is still the primary resource.</translate>]
<translate>
=== KDE Git Configuration === <!--T:6-->
=== KDE Git Configuration === <!--T:6-->


Line 22: Line 24:


<!--T:8-->
<!--T:8-->
Please see the </translate>[[/Configuration|<translate><!--T:9-->
Please see the [[Special:myLanguage/Development/Git/Configuration|Git Configuration page]].
Git Configuration page</translate>]].
 
<translate>
=== KDE Git Policies === <!--T:10-->
=== KDE Git Policies === <!--T:10-->


<!--T:11-->
<!--T:11-->
KDE policies on Git.  More generic development policies go elsewhere.
KDE policies on Git.  More generic development policies go elsewhere.
<!--T:93-->
No formal workflow policy currently exists, but a number of draft proposals have been made:
* [[Development/Git/Simple_Workflow]]
* [[Development/Git/Feature_Branch_Workflow]]
* [[Development/Tutorials/Git/Feature_Development_Workflow]]
* http://community.kde.org/Frameworks/Git_Workflow
<!--T:94-->
The SVN Commit Policy is being reviewed to be replaced with a new Commit Policy applying to both SVN and Git:
* [[Policies/SVN_Commit_Policy]]
* [[Policies/Draft/Commit_Policy]]


=== KDE Git Recipes === <!--T:12-->
=== KDE Git Recipes === <!--T:12-->
Line 36: Line 49:


<!--T:14-->
<!--T:14-->
Please see the </translate>[[/Recipes|<translate><!--T:15-->
Please see the [[Special:myLanguage/Development/Git/Recipes|Git Recipes page]].
Git Recipes page</translate>]].
 
<translate>
=== KDE Git Tutorials === <!--T:16-->
=== KDE Git Tutorials === <!--T:16-->


<!--T:17-->
<!--T:17-->
More in-depth instructions in using Git.
More in-depth instructions in using Git.
</translate>
* [[Development/Tutorials/Git/GitQuickStart|<translate><!--T:18-->
A quick step-by-step guide for getting started</translate>]]
* [[Development/Tutorials/Git/Create a patch|<translate><!--T:19-->
Creating a patch</translate>]]


<translate><!--T:20-->
<!--T:18-->
* [[Special:myLanguage/Development/Tutorials/Git/GitQuickStart|A quick step-by-step guide for getting started]]
 
<!--T:19-->
* [[Special:myLanguage/Development/Tutorials/Git/Create a patch|Creating a patch]]
 
<!--T:20-->
Please help filling this section by
Please help filling this section by
* checking the links at the bottom of the page and see which still have valid content
* checking the links at the bottom of the page and see which still have valid content
Line 60: Line 73:


=== Official Documentation === <!--T:23-->
=== Official Documentation === <!--T:23-->
</translate>
* [http://git-scm.com/documentation <translate><!--T:24-->
Links to git official documentation</translate>]


<translate>
<!--T:24-->
* [http://git-scm.com/documentation Links to git official documentation]
 
=== Git for SVN Users === <!--T:25-->
=== Git for SVN Users === <!--T:25-->
</translate>
* [http://git-scm.com/course/svn.html <translate><!--T:26-->
The git-svn Crash Course</translate>]


<translate>
<!--T:26-->
* [http://git-scm.com/course/svn.html The git-svn Crash Course]
 
=== Git books === <!--T:27-->
=== Git books === <!--T:27-->
</translate>
 
* [http://progit.org/book/ <translate><!--T:28-->
<!--T:28-->
Pro Git</translate>]<translate> <!--T:29-->
* [http://progit.org/book/ Pro Git] - An easy to understand book on git (CC licensed).
- An easy to understand book on git (CC licensed).</translate>
 
* [http://book.git-scm.com/<translate> <!--T:30-->
<!--T:30-->
The git community book</translate>], <translate><!--T:31-->
* [http://book.git-scm.com/ The git community book], also as a [http://book.git-scm.com/book.pdf pdf]
also as a [http://book.git-scm.com/book.pdf pdf]


=== Tutorials === <!--T:32-->
=== Tutorials === <!--T:32-->
</translate>
* [http://www-cs-students.stanford.edu/~blynn/gitmagic/ <translate><!--T:33-->
Git Magic</translate>] <translate><!--T:34-->
- A good intro to git (in several languages!) </translate>
*[http://tom.preston-werner.com/2009/05/19/the-git-parable.html <translate><!--T:35-->
The Git Parable</translate>]<translate> <!--T:36-->
- Essential reading if you want to truly understand git.</translate>
* [http://www.gitcasts.com/ <translate><!--T:37-->
Git Screencasts</translate>]


<translate>=== Cheat Sheets === <!--T:38-->
<!--T:33-->
</translate>
* [http://www-cs-students.stanford.edu/~blynn/gitmagic/ Git Magic] - A good intro to git (in several languages!)
* [http://cheat.errtheblog.com/s/git <translate><!--T:39-->
 
Quick reference</translate>]
<!--T:35-->
* [http://zrusin.blogspot.com/2007/09/git-cheat-sheet.html <translate><!--T:40-->
*[http://tom.preston-werner.com/2009/05/19/the-git-parable.html The Git Parable]
Illustrated git cheat sheet</translate>] <translate><!--T:41-->
- Essential reading if you want to truly understand git.
 
<!--T:37-->
* [http://www.gitcasts.com/ Git Screencasts]
 
=== Cheat Sheets === <!--T:38-->
 
<!--T:39-->
* [http://cheat.errtheblog.com/s/git Quick reference]
 
<!--T:40-->
* [http://zrusin.blogspot.com/2007/09/git-cheat-sheet.html Illustrated git cheat sheet]  
(broken image, get it from [[Media:Zrusin-git-cheat-sheet-medium.png]])
(broken image, get it from [[Media:Zrusin-git-cheat-sheet-medium.png]])


Line 110: Line 122:
<!--T:46-->
<!--T:46-->
Keep:
Keep:
</translate>
* [[Development/Tutorials/Git/Basics|<translate><!--T:47-->
Basics</translate>]]
* [[Development/Tutorials/Git/git-svn|<translate><!--T:48-->
Git-svn</translate>]]
* [[Development/Tutorials/Git/kde-qt|<translate><!--T:49-->
Kde-qt</translate>]]
* [[Getting Started/Sources/Amarok Git Tutorial|<translate><!--T:50-->
The Amarok Git Tutorial</translate>]]


<translate>
<!--T:47-->
* [[Special:myLanguage/Development/Tutorials/Git/Basics|Basics]]
 
<!--T:48-->
* [[Special:myLanguage/Development/Tutorials/Git/git-svn|Git-svn]]
 
<!--T:49-->
* [[Special:myLanguage/Development/Tutorials/Git/kde-qt| Kde-qt]]
 
<!--T:50-->
* [[Special:myLanguage/Getting Started/Sources/Amarok Git Tutorial| The Amarok Git Tutorial]]
 
<!--T:51-->
<!--T:51-->
On community.kde.org:</translate>
On community.kde.org:
* [http://community.kde.org/Sysadmin/GitKdeOrgManual <translate><!--T:52-->
 
Git-KDE Manual</translate>]
<!--T:52-->
* [http://community.kde.org/20110213_GitWorkflowAgenda <translate><!--T:53-->
* [http://community.kde.org/Sysadmin/GitKdeOrgManual Git-KDE Manual]
Git Workflow Agenda</translate>]
 
* [http://community.kde.org/20110213_GitWorkflowAgenda/StevesIdea <translate><!--T:54-->
<!--T:53-->
Git Workflow Agenda, Steve's Idea</translate>]
* [http://community.kde.org/20110213_GitWorkflowAgenda Git Workflow Agenda]
<translate>
 
<!--T:54-->
* [http://community.kde.org/20110213_GitWorkflowAgenda/StevesIdea Git Workflow Agenda, Steve's Idea]
 
<!--T:55-->
<!--T:55-->
On techbase.kde.org:</translate>
On techbase.kde.org:
* [[Getting Started|<translate><!--T:56-->
 
Getting Started</translate>]]
<!--T:56-->
* [[Getting Started/Build/KDE4|<translate><!--T:57-->
* [[Special:myLanguage/Getting Started|Getting Started]]
Build KDE 4</translate>]]
 
* [[Getting Started/Build/KDE4.x|<translate><!--T:58-->
<!--T:57-->
Build KDE 4.x</translate>]]
* [[Special:myLanguage/Getting Started/Build/KDE4| Build KDE 4]]
* [[Getting Started/Build/KDE4/Prerequisites|<translate><!--T:59-->
 
Prerequisites</translate>]]
<!--T:58-->
* [[Getting Started/Build/KDE4/Windows/subversion|<translate><!--T:60-->
* [[Special:myLanguage/Getting Started/Build/KDE4.x|Build KDE 4.x]]
Subversion on Windows</translate>]]
 
* [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts|<translate><!--T:61-->
<!--T:59-->
Increase Productivity with Scripts</translate>]]
* [[Special:myLanguage/Getting Started/Build/KDE4/Prerequisites|Prerequisites]]
* [[Getting_Started/Build/kdesrc-build|<translate><!--T:62-->
 
Kdesrc-build</translate>]]
<!--T:60-->
* [[Getting Started/Sources/Anonymous SVN|<translate><!--T:63-->
* [[Special:myLanguage/Getting Started/Build/KDE4/Windows/subversion|Subversion on Windows]]
Anonymous SVN</translate>]]
 
* [[Getting_Started/Sources/Using_Subversion_with_KDE|<translate><!--T:64-->
<!--T:61-->
Subversion with KDE</translate>]]
* [[Special:myLanguage/Getting_Started/Increased_Productivity_in_KDE4_with_Scripts|Increase Productivity with Scripts]]
* [[Getting_Started/Using_an_IDE_with_KDE4|<translate><!--T:65-->
 
Using an IDE with KDE 4</translate>]]
<!--T:62-->
* [[Policies/SVN_Commit_Policy|<translate><!--T:66-->
* [[Special:myLanguage/Getting_Started/Build/kdesrc-build|Kdesrc-build]]
SVN Commit Policy</translate>]]
 
* [[Policies/SVN_Guidelines|<translate><!--T:67-->
<!--T:63-->
SVN Guidelines</translate>]]
* [[Special:myLanguage/Getting Started/Sources/Anonymous SVN|Anonymous SVN]]
* [[Development/Tools|<translate><!--T:68-->
 
Development Tools</translate>]]
<!--T:64-->
* [[Development/Tutorials/Git/Recipes|<translate><!--T:69-->
* [[Special:myLanguage/Getting_Started/Sources/Using_Subversion_with_KDE|Subversion with KDE]]
Git Recipes</translate>]]
 
* [[Development/Tutorials/Git/decoding-git|<translate><!--T:70-->
<!--T:65-->
Decoding Git</translate>]]
* [[Special:myLanguage/Getting_Started/Using_an_IDE_with_KDE4|Using an IDE with KDE 4]]
* [[Projects/rekonq/Git_with_rekonq_HowTo|<translate><!--T:71-->
 
Git with Rekonq How-to</translate>]]
<!--T:66-->
* [[Projects/Related/Subversion|<translate><!--T:72-->
* [[Special:myLanguage/Policies/SVN_Commit_Policy|SVN Commit Policy]]
Subversion</translate>]]
 
* [[Projects/MovetoGit|<translate><!--T:73-->
<!--T:67-->
Move to Git</translate>]]
* [[Special:myLanguage/Policies/SVN_Guidelines|SVN Guidelines]]
* [[Projects/MoveToGit/StepsToMove|<translate><!--T:74-->
 
Steps to Move</translate>]]
<!--T:68-->
* [[Contribute/Get a SVN Account|<translate><!--T:75-->
* [[Special:myLanguage/Development/Tools|Development Tools]]
Get a SVN Account</translate>]]
 
* [[Contribute/First Steps with your KDE SVN Account|<translate><!--T:76-->
<!--T:69-->
First Steps with your KDE SVN Account]]
* [[Special:myLanguage/Development/Tutorials/Git/Recipes|Git Recipes]]
 
<!--T:70-->
* [[Special:myLanguage/Development/Tutorials/Git/decoding-git|Decoding Git]]
 
<!--T:71-->
* [[Special:myLanguage/Projects/rekonq/Git_with_rekonq_HowTo|Git with Rekonq How-to]]
 
<!--T:72-->
* [[Special:myLanguage/Projects/Related/Subversion|Subversion]]
 
<!--T:73-->
* [[Special:myLanguage/Projects/MovetoGit|Move to Git]]
 
<!--T:74-->
* [[Special:myLanguage/Projects/MoveToGit/StepsToMove|Steps to Move]]
 
<!--T:75-->
* [[Special:myLanguage/Contribute/Get a SVN Account|Get a SVN Account]]
 
<!--T:76-->
* [[Special:myLanguage/Contribute/First Steps with your KDE SVN Account|First Steps with your KDE SVN Account]]


<!--T:77-->
<!--T:77-->
Line 182: Line 220:


=== New Page Structure === <!--T:79-->
=== New Page Structure === <!--T:79-->
<!--T:80-->
* [[Special:myLanguage/Getting_Started|Getting Started]]
<!--T:81-->
* [[Special:myLanguage/Getting_Started/Build|Getting_Started/Build]]
<!--T:82-->
* [[Special:myLanguage/Getting_Started/Build/Environment|Getting_Started/Build/Environment]]
<!--T:83-->
* [[Special:myLanguage/Getting_Started/Build/Requirements|Getting_Started/Build/Requirements]]
<!--T:84-->
* [[Special:myLanguage/Getting_Started/Build/Qt|Getting_Started/Build/Q]]
<!--T:85-->
* [[Special:myLanguage/Getting_Started/Build/KdeSupport|Getting_Started/Build/KdeSupport]]
<!--T:86-->
* [[Special:myLanguage/Getting_Started/Build/Windows|Getting_Started/Build/Windows]]
<!--T:87-->
* [[Special:myLanguage/Getting_Started/Build/Mac_OS_X|Getting_Started/Build/Mac_OS_X]]
<!--T:88-->
* [[Special:myLanguage/Getting_Started/Run/Shell|Getting_Started/Run/Shell]]
<!--T:89-->
* [[Special:myLanguage/Getting_Started/Run/Nested_Session|Getting_Started/Run/Nested_Session]]
<!--T:90-->
* [[Special:myLanguage/Getting_Started/Run/Full_Session|Getting_Started/Run/Full_Session>]]
</translate>
</translate>
* [[Special:myLanguage/Getting_Started|<translate><!--T:80-->
Getting Started</translate>]]
* [[Special:myLanguage/Getting_Started/Build|<translate><!--T:81-->
Getting_Started/Build</translate>]]
* [[Special:myLanguage/Getting_Started/Build/Environment|<translate><!--T:82-->
Getting_Started/Build/Environment</translate>]]
* [[Special:myLanguage/Getting_Started/Build/Requirements|<translate><!--T:83-->
Getting_Started/Build/Requirements</translate>]]
* [[Special:myLanguage/Getting_Started/Build/Qt|<translate><!--T:84-->
Getting_Started/Build/Q</translate>]]
* [[Special:myLanguage/Getting_Started/Build/KdeSupport|<translate><!--T:85-->
Getting_Started/Build/KdeSupport</translate>]]
* [[Special:myLanguage/Getting_Started/Build/Windows|<translate><!--T:86-->
Getting_Started/Build/Windows</translate>]]
* [[Special:myLanguage/Getting_Started/Build/Mac_OS_X|<translate><!--T:87-->
Getting_Started/Build/Mac_OS_X</translate>]]
* [[Special:myLanguage/Getting_Started/Run/Shell|<translate><!--T:88-->
Getting_Started/Run/Shell</translate>]]
* [[Special:myLanguage/Getting_Started/Run/Nested_Session|<translate><!--T:89-->
Getting_Started/Run/Nested_Session</translate>]]
* [[Special:myLanguage/Getting_Started/Run/Full_Session|<translate><!--T:90-->
Getting_Started/Run/Full_Session></translate>]]

Revision as of 09:45, 4 November 2012

This is the hub page for all information about the use of Git by KDE.

KDE and Git

This section provides details on using the KDE Git infrastructure. This is intended for use by KDE developers to find out how KDE uses Git and how to set up Git for use with KDE.

The KDE Git System Administrators Manual is a useful resource for more details on the technical implementation of the KDE Git infrastructure.

For more information on how the KDE Git Repositories are organized, please see the Sources page or the KDE Git Projects page.

Please note that some KDE modules are still using SVN, for more details read the Using Subversion with KDE page.

KDE Git Configuration

How to configure Git for use with the KDE infrastructure.

Please see the Git Configuration page.

KDE Git Policies

KDE policies on Git. More generic development policies go elsewhere.

No formal workflow policy currently exists, but a number of draft proposals have been made:

The SVN Commit Policy is being reviewed to be replaced with a new Commit Policy applying to both SVN and Git:

KDE Git Recipes

Short recipes for using Git with the KDE infrastructure.

Please see the Git Recipes page.

KDE Git Tutorials

More in-depth instructions in using Git.

Please help filling this section by

  • checking the links at the bottom of the page and see which still have valid content
  • write tutorials yourself

External Git Resources

Links to useful external sites about Git

Official Documentation

Git for SVN Users

Git books

  • Pro Git - An easy to understand book on git (CC licensed).

Tutorials

  • Git Magic - A good intro to git (in several languages!)

- Essential reading if you want to truly understand git.

Cheat Sheets

(broken image, get it from Media:Zrusin-git-cheat-sheet-medium.png)

Documentation Changes

KDE Documentation Review

Existing Pages For Review

Existing KDE pages about Git, SVN, and/or buildinga 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.

Keep:

On community.kde.org:

On techbase.kde.org:

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