2013-05-02 49 views
1

我使用Git和ASP.Net網站,並將密碼存儲在web.config文件中。爲了防止這些人被提交,我設置了配置部分加密,因此該文件的connectionStrings部分被加密 - 除非我解密它以欺騙它。使用PowerShell檢查Git臨時區域中的xml文件

然後以防止不小心觸犯它未加密的,我寫我的本地pre-commit鉤子調用一個小PowerShell腳本:

# Verifies that web.config's connectionStrings is encrypted. 

[xml]$config = get-content .\Code\SlicerWeb\web.config 
if ($config.configuration.connectionStrings.EncryptedData) { 
    exit 0 
    } 
else { 
    Write-Output "connectionStrings section is not encrypted." 
    exit 1 
    } 

這工作得很好,並且很可能是不夠好。但是現在我意識到我真正應該做的是檢查索引(暫存區域)中文件的內容,而不是磁盤上的當前文件。

我該如何做一個文件的get-content,因爲它存在於索引中?

回答

0

您可以使用:前綴來訪問當前索引中的對象。所以這應該工作

[xml]$config = git show :./Code/SlicerWeb/web.config 

(反斜槓路徑不在這裏工作)

相關問題