簡體   English   中英

如何在git svn dcommit之前創建存檔?

[英]how can I create an archive before git svn dcommit?

當我推送到svn服務器時,我正在嘗試創建項目的zip存檔。 我的舊設置將使用遠程git倉庫上的post-receive掛鈎來執行此操作。 但是,我現在正在使用svn,我沒有svn服務器,所以我不能在那里放任何東西。 我已經設置了以下預推鈎但這不是在git svn dcommit上運行的:

$cat .git/hooks/pre-push
#!/bin/sh
git archive -o foo_bar.zip --prefix foo_bar/ master

我可以使用哪些鈎子的想法?

謝謝!

你正在使用git-svn ,對吧? 你沒有在任何地方引用它,所以我不確定你是誰。 那些git-hooks不適用於純svn,你必須使用git! 這顯而易見,但更好的是確定。

至於你的問題,你可能會使用一個post-commit鈎子:一旦你完成了一個提交你就拉鏈了。 這樣做的缺點是,您不會將zip文件添加到您的倉庫中。

如果您需要存儲庫中的zip,請使用pre-commit掛鈎並stash樹。 您可以輕松歸檔此樹,將壓縮文件添加到git索引,然后完成!

這個答案可能會幫助您編寫腳本: 使用未提交的更改來存儲存儲庫的存檔

由於沒有這樣的鈎子,如何創建別名呢?

dcm = "!f(){ git archive -o foo_bar.zip --prefix foo_bar/ master; git svn dcommit; }; f"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM