0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

為什么Git和GitHub如此重要?

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-09-16 09:41 ? 次閱讀

編者按:作為數(shù)據(jù)科學家,Git和GitHub想必是大家再熟悉不過的東西。其中,Git是現(xiàn)在最好用的版本控制軟件,GitHub是基于Git的代碼托管庫。面對這樣使用廣泛的工具,學習自然是個無止境的過程,但新手該怎么從一開始就養(yǎng)成好習慣呢?對于這個問題,Microverse的創(chuàng)始人Ariel Camus有話說。

本文不會涉及如何創(chuàng)建GitHub配置文件和如何在本地推送Git這類具體問題,相反地,首先我們會解釋為什么用好Git和GitHub非常重要,然后再介紹三個簡單規(guī)則,只要養(yǎng)成習慣,你就能從中受益無窮。

為什么Git和GitHub如此重要?

如果你剛開始學計算機,那么之后你的目標可能就是積累知識,畢業(yè)后獲得一份對口工作,比如軟件工程師、數(shù)據(jù)科學家等。在這種情況下。答案很簡單——

學習怎么用Git和GitHub很重要,因為你工作后會頻繁用到它們的概率幾乎是99%,它們已經(jīng)成為所有科技公司的標配。所以,如果你想從初級開發(fā)人員脫穎而出,你最好在Git和GitHub上多用點心。

高級開發(fā)人員的“高級”之處不是他們對編程語言的語法有什么更高深的理解,而是他們在實際復雜大型項目上有更多經(jīng)驗。

而如果只是個剛入行的新人,你是很難獲得這種體驗的。經(jīng)驗來源于生活,來源于實踐。Git和GitHub正是你從實際項目中積累實際經(jīng)驗的一種好途徑。

話說到這里,可能你已經(jīng)認同這些工具對找工作的裨益,那么剩下的問題就是:為什么Git和GitHub對公司也那么重要?

簡而言之,Git這個工具允許團隊成員以異步的方式高效、有效地為同一個項目提交開發(fā)代碼。人與人之間能更好地協(xié)作,團隊能解決的問題自然也更大更復雜。這是一個分布式版本控制系統(tǒng),它提供還原更改、創(chuàng)建代碼分支、解決代碼合并沖突等機制——這些都是非常有用的功能,可以幫助解決團隊每天都會遇到的常見問題。

而對于這些問題,Git是當前最好的解決方案。

另一方面,GitHub是通過Git進行版本控制的軟件源代碼托管服務,它為各類特定問題、常見問題提供解決方案,例如Code Review、pull reqeust、問題管理/bug跟蹤等。

說明:即便Git是大多數(shù)公司的首選版本控制工具,GitHub還是有一些強大的競品的,如GitLab和Bitbucket。事實上,之前GitHub被微軟收購時,已經(jīng)有少數(shù)開發(fā)者把自己的代碼庫遷移了出去,但現(xiàn)在GitHub還是主流。如果你已經(jīng)熟練掌握怎么用GitHub,你會發(fā)現(xiàn)自己用GitLab和Bitbucket也不會覺得手生。

Git和GitHub實踐建議:三個簡單規(guī)則

因為我個人是Microverse的創(chuàng)始人,所以這里簡單提一下我的教學經(jīng)驗。Microverse是一個面向軟件工程師的遠程培訓學校,在給學生上課時,我們不僅會教他們如何寫代碼,也會提供大量指導和規(guī)劃,以便他們把課上學到的東西用于實踐。

我們要求學生做的第一件事是遵循以下三個簡單規(guī)則,成為Git和GitHub的專業(yè)使用者。但在具體展開前,請先問自己以下兩個問題:

你熟悉Git和GitHub嗎?如果不,HubSpot上有一個值得閱讀的教程

您知道GitHub Flow是什么嗎?如果不,先去GitHub閱讀官方介紹。

接下來就是這一節(jié)的重點:三個規(guī)則。

規(guī)則一:為每個新項目創(chuàng)建一個Git存儲庫。

規(guī)則二:為每個新功能創(chuàng)建一個新分支。

規(guī)則三:用pull reqeust把代碼合并到Master分支。

規(guī)則一:為每個新項目創(chuàng)建一個Git存儲庫

第一條規(guī)則很簡單,但養(yǎng)成這個習慣不容易。每當你開始做一個新項目——投資組合、學習項目、競賽解決方案等——你就應該新開一個Git存儲庫,然后把它上傳GitHub。

一個專用的repo是為你編寫的每一行代碼使用版本控制的第一步,而版本控制是各大公司處理實際項目的工作方式。因此今早學會這一點并養(yǎng)成習慣,會對你日后發(fā)展帶去幫助。

規(guī)則二:為每個新功能創(chuàng)建一個新分支

假設你正在開發(fā)一個投資組合項目(比如股票債券投資組合),而且想構建一個“聯(lián)系我們”的組件,那么你應該為這個新功能構建一個專用分支,并給他一個直觀有意義的名字(比如contact-me-section),然后把所有和這個組件有關的代碼都存到里面去。

如果你不知道什么叫分支,可以去看之前推薦閱讀的GitHub Flow。

通過分支,你就能和其他團隊成員并行處理不同功能,同時保持每個功能的特定代碼和其他功能的隔離。這種方法有助于篩查不穩(wěn)定代碼,確保合并代碼的高效。

即便團隊里就你一個人,養(yǎng)成這種習慣也有助于你理順思路,同時在日后的工作中建立起優(yōu)勢。

規(guī)則三:用pull reqeust把代碼合并到Master分支

默認情況下,在數(shù)據(jù)庫進行最初的提交后,Git會創(chuàng)建一個名為master的分支。但是,你絕對不應該直接把更改內容添加進去。相反地,你應該用上上面提到的功能分支,然后打開一個新的pull reqeust,把功能分支代碼和主分支代碼合并。

在實際工作中,有些人可能會在你不知情的情況下查看你的pull reqeust,并進行代碼審查。同時,GitHub自己也會對你的代碼做自動化測試,然后向你提交bug提醒。也就是說,如果你的代碼和主分支代碼之間存在沖突,它會報錯,而且這個錯不一定是你造成的,團隊中其他開發(fā)人員提交的更改也會通知你。

只有在確保自己的代碼已經(jīng)經(jīng)過審核、測試和批準的情況下,你才能合并pull reqeust,或者負責審核的人會直接代勞。

如果這個項目只有你一個人,那你也要習慣于這么做,因為這幾乎是每個開源項目的基本工作流程。如果你參與過其他人的項目,那么踐行這三個規(guī)則也有助于你明確自己的貢獻。

也許看完上述內容后,你還有些困惑,但是現(xiàn)在你就可以開始慢慢牢記并養(yǎng)成這三個習慣。不要想著自己該“如何”這么做,如果你能始終專注于“做什么”和“為什么”,你會發(fā)現(xiàn)整個過程會變得無比簡單和自然。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Git
    Git
    +關注

    關注

    0

    文章

    195

    瀏覽量

    15713
  • GitHub
    +關注

    關注

    3

    文章

    461

    瀏覽量

    16332

原文標題:三個簡單規(guī)則,助你養(yǎng)成Git和GitHub好習慣

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Git常用的超級實用命令

    Git作為最流行的代碼版本控制工具,基本上已經(jīng)成為了程序員的一個標配技能。無論使用GitHub,GitLib,Gitee等進行代碼托管,均基于Git。下面聊一聊開發(fā)人員必會的幾個Git
    的頭像 發(fā)表于 10-09 17:19 ?1112次閱讀
    <b class='flag-5'>Git</b>常用的超級實用命令

    github的使用

    ”Creating Repository”按鈕,即創(chuàng)建了版本倉庫。 接下來,在本地安裝git客戶端。一、到官網(wǎng)下載客戶端:https://github
    發(fā)表于 04-16 16:00

    Linux 下建立 GitGitHub的連接并clone至本地

    Linux 下建立 GitGitHub 的連接 Git 是一款開源的分布式版本控制系統(tǒng),而 GitHub 是依托 Git 的代碼托管平
    發(fā)表于 07-09 08:13

    GitGithub效率提高的技巧整理

    GitGithub 提高效率的 10 個技巧!
    發(fā)表于 11-08 08:46

    為什么leakage power如此重要

    power是由哪些部分組成的?為什么芯片的leakage power如此重要?
    發(fā)表于 10-25 08:36

    關于GitGithub一些注意事項

    GitGitHub都是非常強大的工具。即使你已經(jīng)使用他們很長時間,你也很有可能不知道每個細節(jié)。我整理了GitGitHub可能提高日常效率的10個常用技巧。
    發(fā)表于 09-26 11:27 ?0次下載
    關于<b class='flag-5'>Git</b>和<b class='flag-5'>Github</b>一些注意事項

    github是什么_github有什么用

    gitHub是一個面向開源及私有軟件項目的托管平臺,因為只支持git 作為唯一的版本庫格式進行托管,故名gitHubgitHub于2008年4月10日正式上線,除了
    發(fā)表于 11-29 16:19 ?2.1w次閱讀

    如何在GitHub上創(chuàng)建一個全新的Git倉庫詳細講解

    如果您從未使用過 Git,甚至可能從未聽說過它。莫慌張,只需要一步步地跟著這篇入門教程,很快您就會在 GitHub 上擁有一個全新的 Git 倉庫。
    的頭像 發(fā)表于 06-10 09:13 ?1.4w次閱讀
    如何在<b class='flag-5'>GitHub</b>上創(chuàng)建一個全新的<b class='flag-5'>Git</b>倉庫詳細講解

    Git在實際工作中的基本使用方法

    中的基本使用方法。 一、Git的下載、安裝及配置 1、GitGithubGit:分布式版本控制系統(tǒng)。 GitHub:面向開源及私有軟件
    的頭像 發(fā)表于 09-14 18:12 ?2514次閱讀

    了解GitGithub

    關于github,這是一個網(wǎng)站,就是每個程序員自己寫的程序,可以在github上建立一個網(wǎng)上的倉庫,你每次提交的時候可以把代碼提交到網(wǎng)上,這樣你的每次提交,別人也都可以看到你的代碼,同時別人也可以幫你修改你的代碼,這種開源的方式非常方便程序員之間的交流和學習。
    的頭像 發(fā)表于 10-30 11:32 ?2395次閱讀
    了解<b class='flag-5'>Git</b>和<b class='flag-5'>Github</b>

    利用Learn Git Branching輕松學習Git

    Git作為世界上最流行的版本控制系統(tǒng),可以說是每一位與程序打交道的朋友最值得學習的軟件之一。除了管理自己的項目,如果你對參與開源項目感興趣,那么Git更是聯(lián)結Github、Gitlab等知名代碼項目
    的頭像 發(fā)表于 09-15 14:53 ?1480次閱讀

    Git / GitHub 是什么?有什么用?

    分支是 Git 里很重要的概念,大家可以使用 Learning Git Branching 這個在線游戲來學習和理解分支。
    發(fā)表于 12-09 09:39 ?878次閱讀

    如何下載與安裝Git

    msysGit 平臺上也提供了最新的Git安裝包,可以到 GitHub 的頁面上下載 exe 安裝文件并運行
    的頭像 發(fā)表于 02-10 11:19 ?6308次閱讀
    如何下載與安裝<b class='flag-5'>Git</b>

    重塑GitHub、顛覆程序開發(fā):GitHub Universe 2023發(fā)布重大更新

    GitHub 首席執(zhí)行官 Thomas Dohmke 表示,他們正在逐步將 Copilot 與 GitHub 各方面融合,并將其作為一個重要組成部分??梢哉f,這是 GitHub 的一次
    的頭像 發(fā)表于 11-09 15:54 ?711次閱讀
    重塑<b class='flag-5'>GitHub</b>、顛覆程序開發(fā):<b class='flag-5'>GitHub</b> Universe 2023發(fā)布重大更新

    GitHub入門與實踐

    GitHub 是一個基于 Git 版本控制系統(tǒng)的代碼托管平臺,它提供了許多功能和用途,主要面向軟件開發(fā)和協(xié)作。以下是 GitHub 的主要用途和一些關鍵技術:GitHub 的主要用途:
    發(fā)表于 12-14 09:53 ?6次下載