Difference between revisions of "TDE Gitea Workspace"

From Trinity Desktop Project Wiki
Jump to navigation Jump to search
imported>Michele Calgaro
m (rename repositry to workspace)
imported>Michele Calgaro
(added section for generic user)
Line 15: Line 15:
   
   
The [https://mirror.git.trinitydesktop.org/gitea TDE Gitea Workspace] has been set up with the aim of providing:
+
The [https://mirror.git.trinitydesktop.org/gitea TDE Gitea Workspace (TGW)] is a copy of the official source code repositories that is synchronized with the main server on a hourly basis. It offers wider bandwidth and a collaboration workflow that helps achieving the aim of providing:
 
* fast access to the source code, both through Git or web interface
 
* fast access to the source code, both through Git or web interface
 
* an easy tool for users and external developers to propose code changes and improvements
 
* an easy tool for users and external developers to propose code changes and improvements
Line 22: Line 22:
   
   
TDE Gitea Workspace serves the needs of the following groups:
+
TGW serves the needs of the following groups:
 
* people who want to have fast read-only access to the TDE source code
 
* people who want to have fast read-only access to the TDE source code
 
* users who intend to contribute a few patches here and there on a non regular basis
 
* users who intend to contribute a few patches here and there on a non regular basis
 
* contributors who intend to submit code changes on a regular basis with the aim of becoming long term TDE developers
 
* contributors who intend to submit code changes on a regular basis with the aim of becoming long term TDE developers
  +
* developers who want to cooperate on some common functionality or bug fix
   
   
=='''TODO'''==
+
='''Using the TDE Gitea Workspace'''=
  +
  +
=='''As a generic user'''==
  +
You can access TGW in read only mode as an unregistered user. This allows you to clone the TDE source code and keep up to date with the latest commits on a regular basis.<br>
  +
Follow the instructions below to clone the complete set of repositories or just a specific module.
  +
  +
===Cloning the complete TDE code===
  +
  +
* Create a base folder for the TDE source code, hereafter referred to as TDE_DIR. Then:
  +
  +
# Main TDE repository
  +
cd "$TDE_DIR"
  +
git clone https://mirror.git.trinitydesktop.org/gitea/TDE/tde
  +
cd tde
  +
git submodule init -- scripts
  +
git submodule update -- scripts
  +
./scripts/switch_all_submodules_to_head_and_clean anonymous
  +
  +
# TDE packaging repository
  +
cd "$TDE_DIR"
  +
git clone https://mirror.git.trinitydesktop.org/gitea/TDE/tde-packaging
  +
  +
* To keep your local copy up to date, run the following commands on a regular basis.
  +
  +
# Main TDE repository
  +
cd "$TDE_DIR"
  +
./scripts/switch_all_submodules_to_head_and_clean anonymous
  +
  +
# TDE packaging repository
  +
cd "$TDE_DIR" && git pull --rebase
  +
  +
===Cloning a specific TDE module===
  +
  +
'''NOTE''': some of the modules may not have the '''admin''' or '''cmake''' submodules, so you may need to adjust the procedure below accordingly.
  +
  +
* First find out the required module cloning address by accessing the module on the [https://mirror.git.trinitydesktop.org/gitea TDE Gitea Workspace]. An https cloning link is provided on the main page of each repository. Then:
  +
  +
git clone <module cloning address>
  +
cd "<module folder>"
  +
git submodule init -- admin cmake
  +
git submodule update -- admin cmake
  +
cd "<module folder>/admin" && git checkout master
  +
cd "<module folder>/cmake" && git checkout master
  +
  +
If you wish, you can clone TDE packaging repository as follow (make sure '''NOT''' to be in the <module folder> before you go ahead).
  +
  +
git clone https://mirror.git.trinitydesktop.org/gitea/TDE/tde-packaging
  +
  +
* To keep your local copy up to date, run the following commands on a regular basis.
  +
  +
cd "<module folder>" && git pull --rebase
  +
cd "<module folder>/admin" && git pull --rebase
  +
cd "<module folder>/cmake" && git pull --rebase
  +
  +
If you have also cloned the packaging folder:
  +
  +
cd "<tde-packaging folder>" && git pull --rebase
  +
  +
  +
=='''As a contributor'''==
  +
TODO
  +
  +
=='''As a TDE developer'''==
  +
TODO

Revision as of 08:23, 19 August 2018


About Gitea

Gitea is, as described on their official website, a "painless self-hosted Git service".

It provides a free, self-hosted and easy way to maintain and share GIT repositories and facilitate collaboration among several contributors, providing a workflow similar to that offerred by other websites such as GitHub, GitLab and many others.


TDE Gitea Workspace

The official TDE source code is stored on the main Trinity Desktop servers and is available both through Git or web interface. External mirrors also provide access to the source code.
None of these methods allows users to easily propose software changes or bug fixes, having to email patches to one of the TDE core developers or uploading code to the TDE bugszilla in order to do that.


The TDE Gitea Workspace (TGW) is a copy of the official source code repositories that is synchronized with the main server on a hourly basis. It offers wider bandwidth and a collaboration workflow that helps achieving the aim of providing:

  • fast access to the source code, both through Git or web interface
  • an easy tool for users and external developers to propose code changes and improvements
  • a quick way for code sharing and collaboration amongst developers
  • a simple workflow for reviewing, testing and merging code patches


TGW serves the needs of the following groups:

  • people who want to have fast read-only access to the TDE source code
  • users who intend to contribute a few patches here and there on a non regular basis
  • contributors who intend to submit code changes on a regular basis with the aim of becoming long term TDE developers
  • developers who want to cooperate on some common functionality or bug fix


Using the TDE Gitea Workspace

As a generic user

You can access TGW in read only mode as an unregistered user. This allows you to clone the TDE source code and keep up to date with the latest commits on a regular basis.
Follow the instructions below to clone the complete set of repositories or just a specific module.

Cloning the complete TDE code

  • Create a base folder for the TDE source code, hereafter referred to as TDE_DIR. Then:
 # Main TDE repository
 cd "$TDE_DIR"
 git clone https://mirror.git.trinitydesktop.org/gitea/TDE/tde
 cd tde
 git submodule init -- scripts
 git submodule update -- scripts
 ./scripts/switch_all_submodules_to_head_and_clean anonymous
 
 # TDE packaging repository
 cd "$TDE_DIR"
 git clone https://mirror.git.trinitydesktop.org/gitea/TDE/tde-packaging
  • To keep your local copy up to date, run the following commands on a regular basis.
 # Main TDE repository
 cd "$TDE_DIR"
 ./scripts/switch_all_submodules_to_head_and_clean anonymous
 
 # TDE packaging repository
 cd "$TDE_DIR" && git pull --rebase

Cloning a specific TDE module

NOTE: some of the modules may not have the admin or cmake submodules, so you may need to adjust the procedure below accordingly.

  • First find out the required module cloning address by accessing the module on the TDE Gitea Workspace. An https cloning link is provided on the main page of each repository. Then:
 git clone <module cloning address>
 cd "<module folder>"
 git submodule init -- admin cmake
 git submodule update -- admin cmake
 cd "<module folder>/admin" && git checkout master
 cd "<module folder>/cmake" && git checkout master
 

If you wish, you can clone TDE packaging repository as follow (make sure NOT to be in the <module folder> before you go ahead).

 git clone https://mirror.git.trinitydesktop.org/gitea/TDE/tde-packaging
  • To keep your local copy up to date, run the following commands on a regular basis.
 cd "<module folder>"       && git pull --rebase
 cd "<module folder>/admin" && git pull --rebase
 cd "<module folder>/cmake" && git pull --rebase

If you have also cloned the packaging folder:

 cd "<tde-packaging folder>" && git pull --rebase


As a contributor

TODO

As a TDE developer

TODO