給自己傳遞的svn diff輸出的方面Vimdiff一個標準的腳本,在我的RHEL箱:SVN DIFF調用CSH腳本中調用的.cshrc儘管CSH -f標誌
#!/bin/csh -f
vimdiff ${6} ${7}
它添加到路徑,並設置diff-cmd in〜/ .subversion/config
這很好用,而且我擁有我需要的所有diff-y善良。 但是,似乎忽略了csh的-f標誌,並且我的.cshrc文件正在運行:在vimdiff打開之前,我可以看到回顯消息吐出了它。
我的.cshrc連接到一堆許可證服務器,所以它需要一段時間,這是不太好的。
順便說一句,直接運行此腳本(svndiff.sh x x x x x file1 file2
)不調用的.cshrc
是svn的(1.6.11版本)這樣做本身?任何想法,爲什麼會發生這種情況,可以做些什麼呢?
提示檢查完成這項工作 - 但它使我做了其他事情(通過ssh運行命令,而沒有需要腳本運行的交互式shell,我不想在這種情況下運行) 將'svndiff.sh'重命名爲'svndiff'停止svn將其稱爲'csh svndiff.sh',然後使用hashbang(我自然已用'/ bin/bash'替代)。 –
我錯了!重命名不能解決問題。更改我的默認shell不會是一個選項,無論如何我需要在我的.bashrc中使用這些腳本,並且我會再次遇到這個問題。沒有幫助,我似乎無法迫使svn diff直接調用diff-cmd,而不是在shell內部產卵。 –
管理使用提示檢查並通過檢查$ HOST來保持我的腳本運行,因爲這爲我區分了這些情況。謝謝,我仍然有興趣瞭解更多關於svn調用(我推測)sh -c'diff-cmd'而不是diff-cmd本身。 –