2014-01-11 41 views
5

我試圖使用Phabricator的代碼審查功能對學生在課堂上提交的代碼進行評分。該代碼致力於一個Subversion服務器,其中每個學生在服務器上的頂級位置下都有自己的文件夾。對於目前的課程,我無法控制根目錄。如果我這樣做,我只是將其移動,以便有一個包含所有學生存儲庫的文件夾,僅包含我需要的類,並在該文件夾中創建一個存儲庫並從較低分支中創建一個存儲庫,但此時我不能。phabricator用於創建存儲庫的命令行

我已經找到了一種方法,可以在命令行中完成我需要在Phabricator中完成的所有工作,例如創建每個學生用戶並生成差異。只有一件事我不知道該怎麼做:創建一個存儲庫。

我查看了Phabricator和Arcanist的幫助中的選項,但是我沒有看到任何看起來能夠做我需要的東西。

有誰知道是否可以從Phabricator或arc命令行創建存儲庫?或者以其他一些自動化的方式?

謝謝!

回答

7

我們現在還沒有真正簡單的方法來執行此操作,但您可以使用arc來調用Conduit API。管道JSON一滴到它:

echo '{"name":"repo name", ...}' | arc call-conduit repository.create 

您可以在網絡界面訪問/conduit/method/repository.create/用於呼叫接受的參數列表。

+0

非常感謝!這將有很大的幫助! – AStouder

0

更新至Evan Priestley的回答:API方法已更改爲diffusion.repository.edit

開發人員文檔說明如何創建和激活存儲庫here。從該文件的複製:使用事務ID從第一響應

$ echo '{ 
    "transactions": [ 
    { 
     "type": "vcs", 
     "value": "git" 
    }, 
    { 
     "type": "name", 
     "value": "Poetry" 
    } 
    ] 
}' | arc call-conduit diffusion.repository.edit 

設置遠程URL(如果需要)::

創建回購

$ echo '{ 
    "transactions": [ 
    { 
     "type": "repository", 
     "value": "PHID-REPO-7vm42oayez2rxcmpwhuv" 
    }, 
    { 
     "type": "uri", 
     "value": "https://github.com/epriestley/poems.git" 
    }, 
    { 
     "type": "io", 
     "value": "observe" 
    } 
    ] 
}' | arc call-conduit diffusion.uri.edit 

激活回購:

$ echo '{ 
    "objectIdentifier": "PHID-REPO-7vm42oayez2rxcmpwhuv", 
    "transactions": [ 
    { 
     "type": "status", 
     "value": "active" 
    } 
    ] 
}' | arc call-conduit diffusion.repository.edit 

所有有效參數的列表可在網頁界面/conduit/method/diffusion.repository.edit/處獲得。