回報程式錯誤和問題

This page is a translated version of the page Filing bugs and issues and the translation is 62% complete.

Other languages:
català • ‎English • ‎español • ‎français • ‎Bahasa Indonesia • ‎italiano • ‎Nederlands • ‎português • ‎русский • ‎svenska • ‎Türkçe • ‎中文(台灣)‎

欲在 Joomla! 錯誤追蹤網站中回報錯誤,你需要建立一個追蹤項目。一旦建立了追蹤項目,開發者會確定其是否有效並檢查其活動。如果你願意協助測試 Joomla! 的更新檔,請點選詳細指示來了解如何操作。

回報錯誤

在 GitHub 上註冊一個帳號

你得在 GitHub 上註冊帳號 ;Joomla! 問題追蹤使用 GitHub 的帳號資訊作為驗證。

存取 Joomla! 錯誤追蹤

檢查看看想回報的錯誤是否確實被回報

你會看到一份清單陳列許多正在追蹤的項目,而且你可以使用位於清單上方的 Search Tool 裡面的篩選器。把滑鼠移動到追蹤項目的上方,就可以查看這個項目的內容。如果你發現問題,而這個問題還沒被回報,請點選主控制列的 New Item 來回報。

新的畫面會出現,當你填入越多資訊,開發者就可以越輕鬆的解決問題。

所以,盡你所能的填入資料吧!你可查看每個欄位的秘訣,只要在右側的檢視模式從 Pro 切換成 Help。

  • 優先順序:除非你真的很確定問題的重要性,並確定更換其他選項是正確的,不然一般來說用 Medium 就好囉。
  • 建置版本:請輸入受錯誤影響的版本號碼。
  • 分類:呵呵,這個選項更有趣了。除非你知道自己在做什麼,否則請使用 Administration
  • 標題:請簡介這個問題。
  • 描述:關於這個問題的詳細資料。請繼續往下看以得知更多資訊。
  • 上傳:你可以上傳圖片來回報錯誤。關於上傳的條件,會顯示在回報的表格中。

提供簡介

請簡述你遇到的問題。如果你是第一次回報錯誤,先看看其他的追蹤項目當範例是好點子。

範例:

  • 前台:出現一堆警告。
  • 後台:當 "外掛名稱" 開啟時無法儲存文章。

注意:敘述請簡潔有力、切中要點,因為這是開發者第一個會看到的訊息。他們會從中知道有什麼問題需要解決。

提供問題的詳細資料

為了盡可能提供最多有用資訊,追蹤器具備以下五個子區段,可以引導你提供最詳細的資訊。:

  • 產生問題的步驟:請你回想一下你是怎麼遇到問題的,這樣才能讓其他人重現這個問題。
  • 原本想要的結果:當做了以上步驟後,就你預期的,本來應該要出現什麼樣的結果。
  • 實際出現的結果:結果實際上,做完上述步驟後出現了什麼令你意外的結果。
  • 系統資訊:關於你的系統與環境配置的資訊。這包括你正在使用的瀏覽器、伺服器的 PHP 版本還有你的網站使用的資料庫類型。你還可以從管理區的系統資訊頁面複製其他額外的資料供參考。
  • 額外的留言:這裡可以輸入其他可能有助於解決問題和排解困難的資訊,而且這些資訊不適合填以上四個欄位。

一般的格式會如以下範例:

  1. 「我就是這樣做的。」
  2. 「結果他就變這樣了。」
  3. 「這是我原本期待的結果。」
  4. 「其他資訊、可能的解決方案、建議的程式碼修正。」

資訊越多越好。另外很重要的是,最好能夠用範例、或初始安裝的 Joomla! 網站上重現錯誤,或者請用清楚簡單的方式闡述如何重現錯誤。請記住,除你之外,沒有人可以存取你網站的資料庫,所以你需要告訴他人如何利用人人皆能存取的資料來呈現錯誤 - 如範例網站般,人人皆可藉由安裝新的 Joomla! 來取得這些範例資料。

範例 A

我做了什麼:我創立了一個範例網站,一切都很棒。然後我啟動了<外掛名稱>,接著想從後台儲存一篇文章。
發生了什麼:接著我得到了空白頁,而且文章沒被儲存。
本來應該發生什麼事:文章應該被儲存的啊。
其他資訊:我同時開啟了以下外掛、SEF(網頁重新導向)是關閉的、我的網站位於子目錄、我還記得......等等。我就直說吧,這些檔案(例如<這個>和<那個>)就是造成問題的原因(講這句話前,請先知道你在做什麼)。

範例 B

我做了什麼:進入後台。點選了 "選單名稱" 選單。
發生了什麼:網頁一片空白。
本來應該發生什麼事:選單應該要正常開啟。
其他資訊:其他選單都是正常的......等等。

實際的範例

  • 我做了什麼
  1. 從範例網站開始。
  2. 建立一篇尚未發布的文章,區段=FAQ,分類=一般。
  3. In the advanced parameters for the article, set Show Title to "No" and Print, PDF, and Email Icons to "Hide".
  4. Save the article and navigate to front end. Login to the front end as admin and navigate to the Example Pages -> Category Blog menu item.
  • What happened : The newly added article shows but there is no edit icon for the front-end user to click on.
  • What should have happened : The edit icon should show, allowing a front end user to edit this article.
  • Other information : This only happens with the rhuk_milkyway template. By changing this code [code proposed] in file [name and hierarchy of file], line(s) #, the issue looks solved on my settings.

Issue a pull request directly on Joomla!'s GitHub repository

If you wish to propose a fix by directly providing the code within Joomla! itself, you may do so by issuing a "pull request" in Joomla!'s code repository on GitHub.com, located here: https://github.com/joomla/joomla-cms

This process requires some knowledge regarding Source Control Management systems and Git in particular. If you do know what the Git SCM is and how it works, the process is simple:

  • Sign up for a free GitHub.com account
  • Fork the Joomla! repo
  • Switch to the "staging" branch if you wish to propose a fix for the current Joomla! 3.x release or to the "3.x-dev" branch if you want to propose a fix for the next Joomla! Version 3.x.
  • Add/update the related files in Joomla! in the right branch and the click on the "review & compare" button - more info on this here https://help.github.com/articles/using-pull-requests - to start the "pull request" issuing process.

Extra tips and tricks

Well-written bug reports are incredibly helpful. However, there's a certain amount of overhead involved in working with any bug tracking system, so your help in keeping our ticket tracker as useful as possible is appreciated. In particular:

  • Do read the FAQ to see if your issue might be a well-known question.
  • Do search the tracker to see if your issue has already been filed.
  • Do ask on bug reporting forums for Joomla 3.x first if you're not sure if what you're seeing is a bug.
  • Do write complete, reproducible, specific bug reports. Include as much information as you possibly can, complete with code snippets, test cases, etc. A minimal example that illustrates the bug in a nice small test case is the best possible bug report.
  • Don't use the tracker system to ask support questions. Use the Joomla! forums, or the #joomla IRC channel on freenode for that.
  • Don't use the trackers to make large-scale feature requests. We like to discuss any big changes to Joomla!'s core on the developers forums before actually working on them.
  • Don't reopen issues that have been marked "not a bug". This mark means that the decision has been made that we can't or won't fix this particular issue. If you're not sure why, please ask on developer forums.
  • Don't use the tracker for lengthy discussions, because they're likely to get lost. If a particular tracker item is controversial, please move discussion to developer forums.

Reporting security issues

Report security issues to security [at] joomla [dot] org. This is a private list only open to long-time, highly trusted Joomla! developers, and its archives are not publicly readable.

In the event of a confirmed vulnerability in Joomla! itself, we will take the following actions:

  • Acknowledge to the reporter that we've received the report and that a fix is forthcoming. We'll give a rough timeline and ask the reporter to keep the issue confidential until we announce it.
  • Halt all other development as long as is needed to develop a fix, including patches against the current and two previous releases.
  • Determine a go-public date for announcing the vulnerability and the fix. To try to mitigate a possible "arms race" between those applying the patch and those trying to exploit the hole, we will not announce security problems immediately.
  • Publicly announce the vulnerability and the fix on the pre-determined go-public date. This will probably mean a new release of Joomla! but in some cases it may simply be patches against current releases.
Advertisement