Phriction Phriction Guide for DKFZ-internal setup of Git and Phabricator (obsolete, see Onboarding guide) History Version 10 vs 11
Version 10 vs 11
Version 10 vs 11
Content Changes
Content Changes
Welcome to our department(s). 😄
Please follow this guide to have a smooth start with our tools and conventions.
= Install Git =
- {icon linux} [[guide/install-git-linux | Linux (Ubuntu)]]
- {icon windows} [[guide/install-git-windows | Windows]]
= Configure Git =
IMPORTANT: Make sure to use the correct domain in your email address, e.g. `dkfz-heidelberg.de` instead of ~~`dkfz.de`~~.
```$ git config --global user.name "John Doe"
$ git config --global user.email j.doe@dkfz-heidelberg.de
$ git config --global credential.https://phabricator.mitk.org.username jdoe # <-- DKFZ account name```
== DKFZ proxy server ==
Please check if you're connected to the internet through the DKFZ proxy server, e.g., visit https://www.whatismyip.com/. If the shown IP address is identical to the one you see when calling {icon windows} `ipconfig` / {icon linux} `ifconfig` from the command line resp. terminal, you have a public IP address and can skip this section. If they differ, you are connected through the DKFZ proxy server (usually an IP address in the range `193.174.53.x`) and need to configure Git appropriately:
```$ git config --global http.proxy http://www-int2:3128```
= Register with LDAP (your DKFZ account) =
IMPORTANT: Make sure to use the `LDAP` login form instead of the ~~`Username/Password`~~ login form.
In Phabricator, click on `Log In` at the top or follow [[https://phabricator.mitk.org/auth/start/ | this link]] to register your DKFZ account:
{F752525, size=full}
= Set up VCS password =
Authentification for read and write access to hosted Git repositories is managed by Phabricator. You must set a VCS password that should be different to your DKFZ account password. You can do this in your [[/settings | Personal Account Settings]]:
{nav icon=wrench, name=Settings > Personal Account Settings > VCS Password}
Use this password when you are asked for your credentials by Git, not your DKFZ account password.
= Upload public SSH key =
We also provide SSH authentification for read and write access to hosted Git repositories, which is more comfortable than using a password. Choose the SSH URI when cloning a repository instead of the HTTPS URI to use this type of authentification. You need to tell Phabricator your public SSH key in your [[/settings | Personal Account Settings]]:
{nav icon=wrench, name=Settings > Personal Account Settings > SSH Public Keys > icon=cog, name="SSH Key Actions" > icon=upload, name="Upload Public Key"}
Copy the contents of your public key (usually a file named `id_rsa.pub` located in a hidden `.ssh` directory in your home directory) into the `Public Key` field and give it a `Name` like "John Doe <j.doe@dkfz-heidelberg.de>".
NOTE: At the DKFZ, the `X:` drive is your home directory on {icon windows} Windows.
If you don't have a SSH key pair yet, use `ssh-keygen` in your terminal/Git Bash to generate one. When asked for a passphrase by `ssh-keygen`, leave it empty:
```$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/x/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /x/.ssh/id_rsa.
Your public key has been saved in /x/.ssh/id_rsa.pub.```
= Profile picture =
Please change your profile picture to something individual by clicking on the default profile picture at the top:
{nav Profile > icon=cogs, name=Manage > icon=picture-o, name="Edit Profile Picture"}
= Things you should be aware of =
- **Git branch naming scheme in MITK repositories:** We enforce a naming scheme for Git branches in rMITK and rMBI, i.e. `T00000-YadaYada`, where T is a monogram for Task and the number should match a corresponding task in Phabricator. We also allow personal, less restricted branches, which must follow another naming scheme, though: `personal/dkfz_account_name/YadaYada`.
- **Remarkup:** Phabricator supports a pretty cool and lightweight markup language for formatting text. Please have at least a look at the [[https://secure.phabricator.com/book/phabricator/article/remarkup/ | Quick Reference]], especially on how to auto-link things like tasks, people, tags, commits, and stuff: {T1}, @kislinsk, #MITK, rMITK651a153, F1338. Syntax highlighting for code in different languages is also supported.
Welcome to our department(s). 😄
Please follow this guide to have a smooth start with our tools and conventions.
= Install Git =
- {icon linux} [[guide/install-git-linux | Linux (Ubuntu)]]
- {icon windows} [[guide/install-git-windows | Windows]]
= Configure Git =
IMPORTANT: Make sure to use the correct domain in your email address, e.g. `dkfz-heidelberg.de` instead of ~~`dkfz.de`~~.
```$ git config --global user.name "John Doe"
$ git config --global user.email j.doe@dkfz-heidelberg.de
$ git config --global credential.https://phabricator.mitk.org.username jdoe # <-- DKFZ account name```
== DKFZ proxy server ==
Please check if you're connected to the internet through the DKFZ proxy server, e.g., visit https://www.whatismyip.com/. If the shown IP address is identical to the one you see when calling {icon windows} `ipconfig` / {icon linux} `ifconfig` from the command line resp. terminal, you have a public IP address and can skip this section. If they differ, you are connected through the DKFZ proxy server (usually an IP address in the range `193.174.53.x`) and need to configure Git appropriately:
```$ git config --global http.proxy http://www-int2:3128```
NOTE: Using the DKFZ proxy server is only a temporary solution for our development machines. You will get stuck with it sooner or later! We highly recommend to switch to a public IP as soon as possible. Just write a mail to `camic-itservice[at]dkfz-heidelberg.de` and ask for it.
= Register with LDAP (your DKFZ account) =
IMPORTANT: Make sure to use the `LDAP` login form instead of the ~~`Username/Password`~~ login form.
In Phabricator, click on `Log In` at the top or follow [[https://phabricator.mitk.org/auth/start/ | this link]] to register your DKFZ account:
{F752525, size=full}
= Set up VCS password =
Authentification for read and write access to hosted Git repositories is managed by Phabricator. You must set a VCS password that should be different to your DKFZ account password. You can do this in your [[/settings | Personal Account Settings]]:
{nav icon=wrench, name=Settings > Personal Account Settings > VCS Password}
Use this password when you are asked for your credentials by Git, not your DKFZ account password.
= Upload public SSH key =
We also provide SSH authentification for read and write access to hosted Git repositories, which is more comfortable than using a password. Choose the SSH URI when cloning a repository instead of the HTTPS URI to use this type of authentification. You need to tell Phabricator your public SSH key in your [[/settings | Personal Account Settings]]:
{nav icon=wrench, name=Settings > Personal Account Settings > SSH Public Keys > icon=cog, name="SSH Key Actions" > icon=upload, name="Upload Public Key"}
Copy the contents of your public key (usually a file named `id_rsa.pub` located in a hidden `.ssh` directory in your home directory) into the `Public Key` field and give it a `Name` like "John Doe <j.doe@dkfz-heidelberg.de>".
NOTE: At the DKFZ, the `X:` drive is your home directory on {icon windows} Windows. However, we recommend to copy your keys to both, `X:` and your local home directory just in case the `X:` drive isn't available.
If you don't have a SSH key pair yet, use `ssh-keygen` in your terminal/Git Bash to generate one. When asked for a passphrase by `ssh-keygen`, leave it empty:
```$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/x/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /x/.ssh/id_rsa.
Your public key has been saved in /x/.ssh/id_rsa.pub.```
= Cover all the bases =
In case the `X:` drive isn't available, chances are very high that this is also true for your global Git config. Commits in this time will have a different email address attached to them as the one you configured as described above. Phabricator cannot associate these commits to your account, unless you add this email address as secondary email address to your Phabricator account. You can do this in your [[/settings | Personal Account Settings]]:
{nav icon=wrench, name=Settings > Personal Account Settings > Email Addresses > icon=plus, name="Add New Address"}
The email address is `jdoe@ad.dkfz-heidelberg.de` where `jdoe` must be replaced by your DKFZ account name.
= Profile picture =
Please change your profile picture to something individual by clicking on the default profile picture at the top:
{nav Profile > icon=cogs, name=Manage > icon=picture-o, name="Edit Profile Picture"}
= Things you should be aware of =
- **Git branch naming scheme in MITK repositories:** We enforce a naming scheme for Git branches in rMITK and rMBI, i.e. `T00000-YadaYada`, where T is a monogram for Task and the number should match a corresponding task in Phabricator. We also allow personal, less restricted branches, which must follow another naming scheme, though: `personal/dkfz_account_name/YadaYada`.
- **Remarkup:** Phabricator supports a pretty cool and lightweight markup language for formatting text. Please have at least a look at the [[https://secure.phabricator.com/book/phabricator/article/remarkup/ | Quick Reference]], especially on how to auto-link things like tasks, people, tags, commits, and stuff: {T1}, @kislinsk, #MITK, rMITK651a153, F1338. Syntax highlighting for code in different languages is also supported.
Welcome to our department(s). 😄
Please follow this guide to have a smooth start with our tools and conventions.
= Install Git =
- {icon linux} [[guide/install-git-linux | Linux (Ubuntu)]]
- {icon windows} [[guide/install-git-windows | Windows]]
= Configure Git =
IMPORTANT: Make sure to use the correct domain in your email address, e.g. `dkfz-heidelberg.de` instead of ~~`dkfz.de`~~.
```$ git config --global user.name "John Doe"
$ git config --global user.email j.doe@dkfz-heidelberg.de
$ git config --global credential.https://phabricator.mitk.org.username jdoe # <-- DKFZ account name```
== DKFZ proxy server ==
Please check if you're connected to the internet through the DKFZ proxy server, e.g., visit https://www.whatismyip.com/. If the shown IP address is identical to the one you see when calling {icon windows} `ipconfig` / {icon linux} `ifconfig` from the command line resp. terminal, you have a public IP address and can skip this section. If they differ, you are connected through the DKFZ proxy server (usually an IP address in the range `193.174.53.x`) and need to configure Git appropriately:
```$ git config --global http.proxy http://www-int2:3128```
NOTE: Using the DKFZ proxy server is only a temporary solution for our development machines. You will get stuck with it sooner or later! We highly recommend to switch to a public IP as soon as possible. Just write a mail to `camic-itservice[at]dkfz-heidelberg.de` and ask for it.
= Register with LDAP (your DKFZ account) =
IMPORTANT: Make sure to use the `LDAP` login form instead of the ~~`Username/Password`~~ login form.
In Phabricator, click on `Log In` at the top or follow [[https://phabricator.mitk.org/auth/start/ | this link]] to register your DKFZ account:
{F752525, size=full}
= Set up VCS password =
Authentification for read and write access to hosted Git repositories is managed by Phabricator. You must set a VCS password that should be different to your DKFZ account password. You can do this in your [[/settings | Personal Account Settings]]:
{nav icon=wrench, name=Settings > Personal Account Settings > VCS Password}
Use this password when you are asked for your credentials by Git, not your DKFZ account password.
= Upload public SSH key =
We also provide SSH authentification for read and write access to hosted Git repositories, which is more comfortable than using a password. Choose the SSH URI when cloning a repository instead of the HTTPS URI to use this type of authentification. You need to tell Phabricator your public SSH key in your [[/settings | Personal Account Settings]]:
{nav icon=wrench, name=Settings > Personal Account Settings > SSH Public Keys > icon=cog, name="SSH Key Actions" > icon=upload, name="Upload Public Key"}
Copy the contents of your public key (usually a file named `id_rsa.pub` located in a hidden `.ssh` directory in your home directory) into the `Public Key` field and give it a `Name` like "John Doe <j.doe@dkfz-heidelberg.de>".
NOTE: At the DKFZ, the `X:` drive is your home directory on {icon windows} Windows. However, we recommend to copy your keys to both, `X:` and your local home directory just in case the `X:` drive isn't available.
If you don't have a SSH key pair yet, use `ssh-keygen` in your terminal/Git Bash to generate one. When asked for a passphrase by `ssh-keygen`, leave it empty:
```$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/x/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /x/.ssh/id_rsa.
Your public key has been saved in /x/.ssh/id_rsa.pub.```
= Cover all the bases =
In case the `X:` drive isn't available, chances are very high that this is also true for your global Git config. Commits in this time will have a different email address attached to them as the one you configured as described above. Phabricator cannot associate these commits to your account, unless you add this email address as secondary email address to your Phabricator account. You can do this in your [[/settings | Personal Account Settings]]:
{nav icon=wrench, name=Settings > Personal Account Settings > Email Addresses > icon=plus, name="Add New Address"}
The email address is `jdoe@ad.dkfz-heidelberg.de` where `jdoe` must be replaced by your DKFZ account name.
= Profile picture =
Please change your profile picture to something individual by clicking on the default profile picture at the top:
{nav Profile > icon=cogs, name=Manage > icon=picture-o, name="Edit Profile Picture"}
= Things you should be aware of =
- **Git branch naming scheme in MITK repositories:** We enforce a naming scheme for Git branches in rMITK and rMBI, i.e. `T00000-YadaYada`, where T is a monogram for Task and the number should match a corresponding task in Phabricator. We also allow personal, less restricted branches, which must follow another naming scheme, though: `personal/dkfz_account_name/YadaYada`.
- **Remarkup:** Phabricator supports a pretty cool and lightweight markup language for formatting text. Please have at least a look at the [[https://secure.phabricator.com/book/phabricator/article/remarkup/ | Quick Reference]], especially on how to auto-link things like tasks, people, tags, commits, and stuff: {T1}, @kislinsk, #MITK, rMITK651a153, F1338. Syntax highlighting for code in different languages is also supported.