2016-01-08 160 views
7

我上傳一些.js文件通過特拉維斯一個S3桶時,特拉維斯缺少編碼,其中一個文件有以下的正則表達式:上傳到S3存儲

/(^[a-zA-ZàáâäãåąčćęèéêëėįìíîïłńòóôöõøùúûüųūÿýżźñçčšžÀÁÂÄÃÅĄĆČĖĘÈÉÊËÌÍÎÏĮŁŃÒÓÔÖÕØÙÚÛÜŲŪŸÝŻŹÑßÇŒÆČŠŽ∂ð ,.'-]+)/ 

特拉維斯.yml文件是超級簡單:

- provider: s3 
    access_key_id: THEKEY 
    secret_access_key: 
    secure: THESECUREDKEY 
    bucket: my-bucket 
    local-dir: build 
    skip_cleanup: true 
    on: 
    branch: master 
    acl: public_read 

沒什麼奇怪的存在,但這樣做的上傳後,我得到包含正則表達式(而不是我提供的正則表達式)的.js文件裏面以下結果:

/(^[a-zA-Zà áâäãåąÄćęèéêëėįìíîïłńòóôöõøùúûüųūÿýżźñçÄšžÀÃÂÄÃÅĄĆČĖĘÈÉÊËÌÃÃŽÃÄ®ÅŃÒÃ「Ã」ÖÕØÙÚÛÜŲŪŸÃŻŹÑßÇŒÆČŠŽ∂ð ,.'-]+)$/ 

正如你所看到的,我錯過了大部分角色。

有沒有辦法在上傳到s3存儲桶時將編碼設置爲Travis? 我是否缺少別的東西?

+1

您的文件是否正確編碼?使用提出的解決方案之一[這裏](https://stackoverflow.com/questions/11018967/how-can-i-be-sure-of-the-file-encoding)來確保。 是否設置了正確的元數據? (您應該在AWS控制檯的文件屬性的元數據部分中找到Content-Type條目) – rolebi

回答

0

您正面臨編碼問題。發生這種情況時,應檢查開始和終結點之間的任何內容是否缺少文件的編碼信息。

你只有Travis >> AWS,所以它很容易。 嘗試設置content-encoding爲true

+0

由於@rolebi傷心,如果您對此不確定,請檢查文件encondig。 –

+0

將'detect_encoding'設置爲'true'對我來說不起作用 – lante

+0

您能否爲您的代碼的這一部分提供示例分支?我會試着弄清楚這裏發生了什麼 –