Page MenuHomePhabricator

Guide for DKFZ-internal setup of Git and Phabricator
Updated 2,150 Days AgoPublic

Version 11 of 13: You are viewing an older version of this document, as it appeared on Jun 15 2018, 10:54 AM.

Welcome to our department(s). ๐Ÿ˜„
Please follow this guide to have a smooth start with our tools and conventions.

Install Git

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 ipconfig / 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 this link to register your DKFZ account:

ldap_login.png (500ร—388 px, 28 KB)

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 Personal Account Settings:

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 Personal Account Settings:

Settings โ†’ Personal Account Settings โ†’ SSH Public Keys โ†’ SSH Key Actions โ†’ 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 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 Personal Account Settings:

Settings โ†’ Personal Account Settings โ†’ Email Addresses โ†’ 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:

Profile โ†’ Manage โ†’ 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 Quick Reference, especially on how to auto-link things like tasks, people, tags, commits, and stuff: T1: testbug1, @kislinsk, MITK, rMITK651a153, F1338. Syntax highlighting for code in different languages is also supported.
Tags
None
Referenced Files
F1338: daydream.gif
Apr 21 2017, 11:22 AM
F752525: ldap_login.png
Apr 21 2017, 11:08 AM
Tokens
"Yellow Medal" token, awarded by kirchnth."Like" token, awarded by floca.
Last Author
kislinsk
Last Edited
Jun 15 2018, 10:54 AM

Event Timeline

kislinsk edited the content of this document. (Show Details)
kislinsk edited the content of this document. (Show Details)
kislinsk added a subscriber: kislinsk.
nolden changed the title from Guide to Guide for DKFZ-internal setup of phabricator.Apr 22 2017, 12:28 PM
nolden edited the content of this document. (Show Details)
nolden added a subscriber: nolden.
kislinsk changed the title from Guide for DKFZ-internal setup of phabricator to Guide for DKFZ-internal setup of Phabricator.Apr 22 2017, 12:49 PM
kislinsk changed the title from Guide for DKFZ-internal setup of Phabricator to Guide for DKFZ-internal setup of Git and Phabricator.
kislinsk edited the content of this document. (Show Details)
kislinsk changed the title from Guide for DKFZ-internal setup of Git and Phabricator to Guide for DKFZ-internal setup of Git and Phabricator (obsolete, see Onboarding guide).Sep 4 2018, 12:28 PM