Development/Git: Difference between revisions

From KDE TechBase
(Marked this version for translation)
(Just redirect page of build.)
(11 intermediate revisions by 5 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/Commit Policy]]


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


<!--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 72:


=== 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]
 
* [http://try.github.io/ tryGit] A 15 minute online interactive tutorial
 
=== 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 123:
<!--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:59-->
Build KDE 4.x</translate>]]
* [[Special:myLanguage/Getting Started/Build/KDE4/Prerequisites|Prerequisites]]
* [[Getting Started/Build/KDE4/Prerequisites|<translate><!--T:59-->
 
Prerequisites</translate>]]
<!--T:60-->
* [[Getting Started/Build/KDE4/Windows/subversion|<translate><!--T:60-->
* [[Special:myLanguage/Getting Started/Build/KDE4/Windows/subversion|Subversion on Windows]]
Subversion on Windows</translate>]]
 
* [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts|<translate><!--T:61-->
<!--T:61-->
Increase Productivity with Scripts</translate>]]
* [[Special:myLanguage/Getting_Started/Increased_Productivity_in_KDE4_with_Scripts|Increase Productivity with Scripts]]
* [[Getting_Started/Build/kdesrc-build|<translate><!--T:62-->
 
Kdesrc-build</translate>]]
<!--T:62-->
* [[Getting Started/Sources/Anonymous SVN|<translate><!--T:63-->
* [[Special:myLanguage/Getting_Started/Build/kdesrc-build|Kdesrc-build]]
Anonymous SVN</translate>]]
 
* [[Getting_Started/Sources/Using_Subversion_with_KDE|<translate><!--T:64-->
<!--T:63-->
Subversion with KDE</translate>]]
* [[Special:myLanguage/Getting Started/Sources/Anonymous SVN|Anonymous SVN]]
* [[Getting_Started/Using_an_IDE_with_KDE4|<translate><!--T:65-->
 
Using an IDE with KDE 4</translate>]]
<!--T:64-->
* [[Policies/SVN_Commit_Policy|<translate><!--T:66-->
* [[Special:myLanguage/Getting_Started/Sources/Using_Subversion_with_KDE|Subversion with KDE]]
SVN Commit Policy</translate>]]
 
* [[Policies/SVN_Guidelines|<translate><!--T:67-->
<!--T:65-->
SVN Guidelines</translate>]]
* [[Special:myLanguage/Getting_Started/Using_an_IDE_with_KDE4|Using an IDE with KDE 4]]
* [[Development/Tools|<translate><!--T:68-->
 
Development Tools</translate>]]
<!--T:66-->
* [[Development/Tutorials/Git/Recipes|<translate><!--T:69-->
* [[Special:myLanguage/Policies/SVN_Commit_Policy|SVN Commit Policy]]
Git Recipes</translate>]]
 
* [[Development/Tutorials/Git/decoding-git|<translate><!--T:70-->
<!--T:67-->
Decoding Git</translate>]]
* [[Special:myLanguage/Policies/SVN_Guidelines|SVN Guidelines]]
* [[Projects/rekonq/Git_with_rekonq_HowTo|<translate><!--T:71-->
 
Git with Rekonq How-to</translate>]]
<!--T:68-->
* [[Projects/Related/Subversion|<translate><!--T:72-->
* [[Special:myLanguage/Development/Tools|Development Tools]]
Subversion</translate>]]
 
* [[Projects/MovetoGit|<translate><!--T:73-->
<!--T:69-->
Move to Git</translate>]]
* [[Special:myLanguage/Development/Tutorials/Git/Recipes|Git Recipes]]
* [[Projects/MoveToGit/StepsToMove|<translate><!--T:74-->
 
Steps to Move</translate>]]
<!--T:70-->
* [[Contribute/Get a SVN Account|<translate><!--T:75-->
* [[Special:myLanguage/Development/Tutorials/Git/decoding-git|Decoding Git]]
Get a SVN Account</translate>]]
 
* [[Contribute/First Steps with your KDE SVN Account|<translate><!--T:76-->
<!--T:71-->
First Steps with your KDE SVN Account]]
* [[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 215:


=== 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 23:58, 22 November 2013

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.

  • tryGit A 15 minute online interactive tutorial

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