Quantcast
Channel: SCN : Blog List - ABAP Development
Viewing all articles
Browse latest Browse all 943

Code Review with Phabricator - an open source, software engineering platform

$
0
0

Phabricator is a collection of open source web applications that help software companies build better software. It is developed and maintained by Facebook and largely based on their own internal tools.

hero.png

 

The major components of Phabricator are:

  • Differential - a code review tool
  • Diffusion - a repository browser
  • Maniphest - a bug tracker
  • Phriction - a wiki

 

My company has a very mature Java Development team and they have been using Phabricator's Differential for their code review process for quite some time. Our ABAP team has experimented with various processes for enabling and enforcing code reviews and I recently hacked together some integration so that we can use Phabricator for our ABAP code as well. Once I've cleaned up the code and made it easy to configure without having to change a bunch of code I'll set up a project on github with everything you need to get up and running!

 

Basically the goal is to get a nice side by side comparison so that we can quickly and easily see what was changed and to be able to control the release of transport tasks by checking the status of the review. You will not be able to release tasks until the review has been accepted.

diff.PNG

 

 

 

 

Here is what our new process looks like:


You are done coding in a transport task and you are ready to have it reviewed and moved up to the test tier.

1.png

 

Open a command prompt and navigate to C:\Phabricator. When you get there, run the command sapdiff <task number>

2.png


You’ll get a popup of notepad++ and you’ll need to enter a few details:

3.png


<<Replace this line with your Revision Title>> -- This needs to be set to the task number that you are submitting for review

Reviewers – Enter the phabricator user name of the person (or people) you want to review this

4.png


Save the file, then close notepad++. The differences have now been pushed to Phabricator. You will receive an email confirming that a ‘revision’ has been opened and the reviewers will receive an email asking them to review your code.



If you forgot to submit a task for review you will get the following error when you try to release it:

7.png


If you submitted the task for review but it hasn’t been approved you will get the following message including the URL of the revision in Phabricator so you can send it off to someone to follow up if needed.

8.png


I'm pretty excited about this! It's a HUGE improvement over our old process. Hope you like it!


- Lucas



Viewing all articles
Browse latest Browse all 943

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>