我已經看到了它提到,善變的存儲上的文件的可執行位,但不能找出如何做到這一點。我正在尋找類似於svn ps svn:executable '' TARGET
的功能。設置上的文件可執行位在水銀
6
A
回答
15
集(或撤消)上的文件的可執行位,然後將汞其標記爲修改。承諾。
您將需要啓用混帳風格的diff看到在比較輸出模式,但它仍然存在不顧。
0
對於Linux或Unix您可以使用chmod +x filename
。
對於Windows,您需要創建一個補丁文件,然後使用--bypass
參數將其應用於hg import
。這可以通過創建一個名爲SetFileExecutable.ps1
PowerShell腳本文件來完成,下面
param (
[String]$comment = "+execbit",
[Parameter(Mandatory=$true)][string]$fileRelativePath,
[Parameter(Mandatory=$true)][string]$repositoryRoot
)
$fileRelativePath = $fileRelativePath.Replace('\', '/')
$diff = "$comment" + [System.Environment]::NewLine +
[System.Environment]::NewLine +
"diff --git a/$fileRelativePath b/$fileRelativePath" + [System.Environment]::NewLine +
"old mode 100644" + [System.Environment]::NewLine +
"new mode 100755"
Push-Location
cd $repositoryRoot
$diff | Out-File -Encoding 'utf8' $env:tmp\exebit.diff
hg import --bypass -m "$comment" $env:tmp\exebit.diff
Pop-Location
文本如下執行:
.\SetFileExecutable.ps1" -comment "Marking file as executable" -fileRelativePath mvnw -repositoryRoot "c:\myrepo"
相關問題
- 1. 水銀執行某些文件類型
- 2. svn:如何設置文件上的可執行位?
- 3. 設置水銀用戶名
- 4. CMake的可執行文件的位置
- 5. 文件與水銀
- 6. 水銀:diff文件
- 7. UNIX cc可執行文件位置
- 8. Quartz .NET Config可執行文件位置
- 9. 遞歸檢查可執行位設置的文件
- 10. 在64位Powershell可執行文件上執行cmdlet
- 11. Aptana 3 - 設置PHP可執行文件
- 12. 如何在可執行文件上設置MOTW
- 13. 在運行時確定JVM可執行文件的位置
- 14. 水銀:沒有〜/ .hgrc文件
- 15. 位置獨立可執行文件的正確Xcode設置是什麼
- 16. 如何在C中找到可執行文件的位置?
- 17. 在virtualenv中創建可執行主機文件的位置?
- 18. 在MinGW中管理可執行文件的位置
- 19. 設置Gradle以在Android Studio中運行Java可執行文件
- 20. 可執行文件設置用戶ID-上執行選項沒有設置有效的UID
- 21. 查看.NET可執行文件在用戶計算機上循環的位置
- 22. 在水銀
- 23. Mobaxterm水銀插件
- 24. 在Xcode中設置活動的可執行文件
- 25. 在Xcode中設置默認的活動可執行文件
- 26. 帶DMD的64位可執行文件
- 27. 水銀鉤上設置標籤名稱政策
- 28. Eclipse在某些未知位置提取可執行文件
- 29. 在執行按鈕上設置微調器值位置
- 30. 非PIE二進制文件 - 可執行文件'<xyz>'不是位置獨立可執行文件
提供的解決方案,我沒有這與Mercurial 2.7.1相同的經驗。對我而言,更改文件上的可執行標誌不會更改該文件的狀態。 – 2014-01-15 14:28:51
這並不工作在Windows上,它沒有這樣的觀念 - 見https://stackoverflow.com/questions/2702825/setting-mercurials-execute-bit-on-windows – 2014-02-13 14:49:30