2017-03-04 79 views
5

我是Travis CI的新手,我只是想了解爲什麼和這裏發生了什麼。我儘可能按照他們文檔中的設置說明進行操作。我所得到的是:爲什麼Travis CI編輯我的文件?

  • 我的Rails在Github代碼
  • 特拉維斯CI,一旦建立我的回購,因爲它推到GitHub的分支主。
  • 如果構建成功,Heroku應用程序將Travis CI部署到代碼中。

我無法把握究竟是爲什麼我得到這個當構建完成:

HEAD detached from 2a3b308 
Changes not staged for commit: 
....... 
modified: script/travis.sh 

Untracked files: 
    (use "git add <file>..." to include in what will be committed) 

    vendor/bundle/ 

no changes added to commit (use "git add" and/or "git commit -a") 

我在.travis.yml做before_install: - chmod +x script/travis.sh和我在構建日誌得到chmod +x script/travis.sh。我有git版本2.7.4

爲什麼我的script/travis.sh編輯?我應該添加這些更改還是在我的設置中出現錯誤?在script/travis.sh我有一些小的命令要在構建之前執行,設置我的Github身份等。

爲什麼要添加此文件夾vendor/bundle/

回答

4

您將需要添加一個git的差異一步看到了本質的變化,但檢查您的特拉維斯日誌:如果你看到

chmod a+x travis.sh 

這意味着原來的travis.sh腳本沒有添加爲可執行文件。

在您的回購,做一個(與Git 2.9.1+):

git add --chmod=+x script/travis.sh 
git commit -m "Make travis.sh executable" 
git push 

再然後檢查是否仍然特拉維斯顯示您的文件生成後進行修改。


關於vendor/bundle/,它不是「添加」,簡單地生成和未跟蹤,這意味着你回購不被修改。
參見Travis/Cache Bundle

在紅寶石和Objective-C的項目,通過安裝捆紮機依賴性可以彌補構建持續時間的很大一部分。在構建之間緩存捆綁包大大減少了構建運行的時間。

如果您有自定義的Bundler參數,並且這些參數包括--path選項,則Travis CI將使用該路徑。如果--path丟失,但存在--deployment,則它將使用vendor/bundle

+0

感謝您的回覆。我在.travis.yml中執行了'before_install: - chmod + x script/travis.sh',並在我的構建日誌中獲得了'chmod + x script/travis.sh'。我有git版本2.7。 – bork

+0

更新:修正了'travis.sh'的問題。現在只有'vendor/bundle /'被添加了。 – bork

+0

謝謝。所以理論上我不需要做任何事情,對吧?但我認爲這看起來很醜陋。我能否以某種方式過濾掉它,還是我必須接受這種情況? – bork