1. 程式人生 > 其它 >201971010140-魏瑾川 常用原始碼管理工具與開發工具

201971010140-魏瑾川 常用原始碼管理工具與開發工具

前文

專案 內容
課程班級部落格連結 2019級卓越工程師班
這個作業要求連結 實驗二 軟體工程個人專案
我的課程學習目標

完成本次實驗內容,瞭解各開發工具間的異同

這個作業在哪些方面幫助我實現學習目標

瞭解各個常用的開放工具

任務1、調研原始碼版本管理軟體

Github

  • 什麼是Github?

    Github是一個基於git的程式碼託管平臺,付費使用者可以建私人倉庫,我們一般的免費使用者只能使用公共倉庫,也就是程式碼要公開。Github 由Chris Wanstrath, PJ Hyett 與Tom Preston-Werner三位開發者在2008年4月創辦。迄今擁有59名全職員工,主要提供基於git的版本託管服務。

  • Github具有什麼優點?

    1. 可以錯誤跟蹤,並且支援快速搜尋;
    2. 擁有訂閱、討論組、文字渲染、線上檔案編輯器、協作圖譜(報表)、程式碼片段分享等;
    3. 開源專案可免費託管;
    4. 是全球最大的開源社群。
  • Github的基礎用法

    傳送門

Gitlab

  • 什麼是Gitlab?

    Gitlab 是由 GitLabInc 開發,使用 MIT許可證的基於網路Git倉庫 管理工具,且具有 wiki 和issue跟蹤功能。使用 Git 作為程式碼管理工具,並在此基礎上搭建起來的web服務。

  • Gitlab 與 Github

    Github 和 Gitlab 都是基於 web 的 Git 倉庫,使用起來二者差不多,它們都提供了分享開源專案的平臺,為開發團隊提供了儲存、分享、釋出和合作開發專案的中心化雲端儲存的場所。Github 作為開原始碼庫,擁有超過 900 萬的開發者使用者,目前仍然是最火的開源專案託管平臺,Github 同時提供公共倉庫和私有倉庫,但如果使用私有倉庫,是需要付費的。Gitlab 解決了這個問題,你可以在上面建立私人的免費倉庫。 Gitlab 讓開發團隊對他們的程式碼倉庫擁有更多的控制,相比較 Github , 它有不少特色:

    1. 允許免費設定倉庫許可權;
    2. 允許使用者選擇分享一個 project 的部分程式碼;
    3. 允許使用者設定 project 的獲取許可權,進一步提升安全性;
    4. 可以設定獲取到團隊整體的改進進度;
    5. 通過 innersourcing 讓不在許可權範圍內的人訪問不到該資源;

    所以,從程式碼的私有性上來看,Gitlab 是一個更好的選擇。但是對於開源專案而言,Github 依然是程式碼託管的首選。

Bitbucket

  • Bitbucket是什麼?

    Bitbucket 是 Atlassian 公司提供的一個基於web的版本庫託管服務,支援Mercurial和 Git 版本控制系統。可以簡單的理解為,它就是一個自建的 Git 倉庫,不過可以對分支和合並操作進行控制。當然功能遠不止於此。Bitbucket能夠與Atlassian的其他產品相整合,如 Jira、HipChat、Confluence和Bamboo。

  • Bitbucket具有什麼優點?

    1. 對小團隊免費,有至多5名成員的團隊可以獲得無限數量的免費儲存庫;
    2. 支援heets/ssh,可自定義域名;
    3. 靈活的許可權控制;

任務2、調研並試用廣泛使用的原始碼整合開發工具軟體

Visual Studio

  • 官網連結:https://code.visualstudio.com/
  • 簡介:Visual Studio 是目前最流行的Windows平臺整合開發環境,它支援多種語言編輯,社群內大量的外掛可以為開發者提供各種語言的整合開發環境。

PyCharm

  • 官網連結:https://www.jetbrains.com/pycharm/
  • 簡介:是目前 Python 語言最好用的整合開發工具,裡面支援大量外掛,方便Python專案的開發和部署。

IntelliJ IDEA

  • 官網連結:https://www.jetbrains.com/idea/
  • 簡介:是目前 Java 語言最好用的整合開發工具,裡面支援大量外掛,方便Java專案的開發和部署。

Android Studio

  • 官網連結:https://developer.android.com/studio/
  • 簡介:是目前安卓開發最好用的整合開發工具,支援 JavaKotlin 兩種語言,裡面含有大量外掛,方便安卓專案的開發和部署。

任務3、撰寫任務1、任務2相關內容部落格

  • 已使用 Typora 進行 MarkDown 格式部落格的本地編輯和實時預覽。