• <bdo id="i4g44"></bdo>
    <code id="i4g44"><tr id="i4g44"></tr></code>
    <strike id="i4g44"></strike>
    <bdo id="i4g44"></bdo>

    為用戶創(chuàng)造價值的開發(fā)公司

    始終追求工匠精神,是您靠譜的H5開發(fā)、小程序開發(fā)、微信開發(fā)供應(yīng)商

    藍暢首頁 >> 動態(tài)

    什么是Github?Github和Git的關(guān)系是什么

    時間:2019-07-27 00:00:00 | 來源:

    初識Github

    GitHub 是程序員的必備技能

    1.什么是Github?

    確切的說 GitHub 是一家公司,位于舊金山,由 Chris Wanstrath, PJ Hyett 與

    Tom Preston-Werner 三位開發(fā)者在2008年4月創(chuàng)辦。這是它的 Logo:

    2008年4月10日,GitHub正式成立,地址:How people build software · GitHub ,

    主要提供基于git的版本托管服務(wù)。一經(jīng)上線,它的發(fā)展速度驚為天人,截止目前,GitHub 已經(jīng)發(fā)展成全球最大的開(同)源(性)社區(qū)。

    2.Github和Git的關(guān)系?

    首先需要知道的一點是:

    Git 是一款免費、開源的分布式版本控制系統(tǒng),他是著名的 Linux 發(fā)明者 Linus Torvalds 開發(fā)的。說到版本控制系統(tǒng),估計很多人都用過 SVN ,只不過 Git 是新時代的產(chǎn)物,如果你還在用 SVN 來管理你的代碼,那就真的有些落伍了。不管是學習 GitHub ,還是以后想從事編程行業(yè),Git 都可以算是必備技能了,所以從現(xiàn)在開始建議你先去學習熟悉下 Git 。

    而 GitHub 上面說了,主要提供基于 git 的版本托管服務(wù)。也就是說現(xiàn)在 GitHub 上托管的所有項目代碼都是基于 Git 來進行版本控制的,所以 Git 只是 GitHub 上用來管理項目的一個工具而已,GitHub 的功能可遠不止于此!

    3.GitHub 的影響力

    上面我說了 GitHub 現(xiàn)在毫無疑問基本是全球最大的開源社區(qū)了,這樣說你們可能認為未免有點浮夸,且聽我一一舉證:

    全球頂級科技公司紛紛加入 GitHub ,并貢獻他們自己的項目代碼

    全球頂級開源項目都優(yōu)先選擇在 GitHub 上開源

    全球頂級編程大牛加入GitHub

    • 被稱為「Android之神」的 JakeWharton:https://github.com/JakeWharton , 你們用的很多開源庫如 ButterKnife、OkHttp、 Retrofit、 Picasso、ViewPagerIndicator 等都是出自他之手!


    4.GitHub 有什么用

    • 學習優(yōu)秀的開源項目

      開源社區(qū)一直有一句流行的話叫「不要重復發(fā)明輪子」,某種意義上正是因為開源社區(qū)的貢獻,我們的軟件開發(fā)才能變得越來越容易,越來越快速。試想你在做項目時,如果每一模塊都要自己去寫,如網(wǎng)絡(luò)庫、圖片加載庫、ORM庫等等,自己寫的好不好是一回事,時間與資源是很大的成本。對于大公司可能會有人力與資源去發(fā)明一套自己的輪子,但是對于大部分互聯(lián)網(wǎng)創(chuàng)業(yè)公司來說時間就是一切。而且你在使用開源項目的過程也可以學習他們優(yōu)秀的設(shè)計思想、實現(xiàn)方式,這是最好的學習資料,也是一份提升自己能力的絕佳方式!

    • 多人協(xié)作

      如果你想發(fā)起一個項目,比如翻譯一份不錯的英文文檔,覺得一個人的精力不夠,所以你需要更多的人參與進來,這時候 GitHub 是你的最佳選擇,感興趣的人可以參與進來,利用業(yè)余時間對這個項目做貢獻,然后可以互相審核、合并,簡直不要太棒!

    • 搭建博客、個人網(wǎng)站或者公司官網(wǎng)

      這個就不用多說了,現(xiàn)在越來越多的博客都是基于 GitHub Pages 來搭建的了,你可以隨心所欲的定制自己的樣式,可以給你博客買個逼格高的域名,再也不用忍受各大博客網(wǎng)站的約束與各式各樣的廣告了!

    • 寫作

      如果你喜歡寫作,而且基于 Markdown, 并準備出版書籍,那么推薦你用 Gitbook ,技術(shù)寫作人的最愛!

    • 個人簡歷

      如果你有一個活躍的 GitHub 賬號,上面有自己不錯的開源項目,還經(jīng)常給別的開源項目提問題,push 代碼,那么你找工作將是一個非常大的優(yōu)勢,現(xiàn)在程序員的招聘很多公司都很看中你 GitHub 賬號,某種意義上 GitHub 就可以算是你的簡歷了。而且不僅國內(nèi),很多國外的科技公司都會通過 GitHub 來尋找優(yōu)秀的人才,比如我甚至通過 GitHub 收到過 Facebook 的邀請郵件!

    • 其他

      當然 GitHub 能做的還遠不止這些,我見過很多在 GitHub 搞的一些有意思的項目,有找男朋友的,甚至還有利用 GitHub 的 commit 喪心病狂的秀恩愛的,沒錯,那個喪心病狂的人就是我,如果你前段日子關(guān)注了我的 GitHub ,那么能看到這么一個壯觀的景象:



    加入Github

    1.注冊 GitHub

    先去 GitHub 官網(wǎng)「How people build software · GitHub」注冊「Sign Up」個賬號,注冊頁面如下:


    這個應(yīng)該沒啥說的,需要填用戶名、郵箱、密碼,值得一提的用戶名請不要那么隨便,最好取的這個名字就是你以后常用的用戶名了,也強烈建議你各大社交賬號都用一樣的用戶名,這樣識別度較高,比如我的博客域名、GitHub、知乎等其他社交賬號 ID 都是 stormzhang ,微博是因為被占用了,無奈換了個id,而且這個用戶名以后在 GitHub 搭建博客的時候默認給你生成的博客地址就是 http://username.github.io ,所以給自己取個好點的用戶名吧。

    填好用戶名、郵箱、密碼緊接著到這一步:

    這個是什么意思呢?GitHub 有兩種,一種是公開,這種是免費的,就是你創(chuàng)建的項目是開放的,所有人都能看得到;另一種是私有,這種是收費的,這種一般是很多企業(yè)在使用 GitHub 的私有倉庫在托管自己的項目,這也是 GitHub 的一種盈利模式對于個人你就直接默認選擇公開的就行了。
    2.認識Github
    注冊成功之后你會到 GitHub 的主頁面來:

    導航欄,從左到右依次是 GitHub 主頁按鈕、搜索框、PR、Issues、Gist(這些概念后面會講的)、消息提醒、創(chuàng)建項目按鈕、我的賬號相關(guān)。

    討論區(qū),這部分你可以理解成微博,就是你關(guān)注的一些人的活動會出現(xiàn)在這里,比如如果你們關(guān)注我了,那么以后我 star、fork 了某些項目就會出現(xiàn)在你的時間線里。 ^_^ 因為是新創(chuàng)建的Github,所以空曠了些

    我的項目,這部分就不用說了,如果你創(chuàng)建了項目,就里就可以快捷訪問。

    3.設(shè)置你的Github

    如果你也是新注冊的 GitHub 賬號,是不是覺得很簡陋?雖然我們還沒有多少自己的項目,但是第一步起碼要先完善自己的信息,點擊如下的 Settings 菜單:

    到設(shè)置頁面來設(shè)置一些基本信息:

    像頭像、Name 建議要設(shè)置一個常用的,這兩個很有識別性,公開的郵箱也要設(shè)置一個,這樣那些企業(yè)啊、獵頭啊就通過這個公開郵箱去聯(lián)系你,友情提醒:別在 GitHub 把自己的 QQ 郵箱放上去,不顯得太 low 了么?沒有 gmail 郵箱,起碼也得注冊個 foxmail、163 郵箱之類的吧。

    4. GitHub 基本概念

    上面認識了 GitHub 的基本面貌之后,你需要了解一些 GitHub 的基本概念,這些概念是你經(jīng)常會接觸并遇到的。

    • Repository

      倉庫的意思,即你的項目,你想在 GitHub 上開源一個項目,那就必須要新建一個 Repository ,如果你開源的項目多了,你就擁有了多個 Repositories 。

    • Issue

      問題的意思,舉個例子,就是你開源了一個項目,別人發(fā)現(xiàn)你的項目中有bug,或者哪些地方做的不夠好,他就可以給你提個 Issue ,即問題,提的問題  多了,也就是 Issues ,然后你看到了這些問題就可以去逐個修復,修復ok了就可以一個個的 Close 掉。

    • Star

      這個好理解,就是給項目點贊,但是在 GitHub 上的點贊遠比微博、知乎點贊難的多,如果你有一個項目獲得100個star都算很不容易了!

    • Fork

      這個不好翻譯,如果實在要翻譯我把他翻譯成分叉,什么意思呢?你開源了一個項目,別人想在你這個項目的基礎(chǔ)上做些改進,然后應(yīng)用到自己的項目   中,這個時候他就可以 Fork 你的項目,這個時候他的 GitHub 主頁上就多了一個項目,只不過這個項目是基于你的項目基礎(chǔ)(本質(zhì)上是在原有項目的基   礎(chǔ)上  新建了一個分支,分支的概念后面會在講解Git的時候說到),他就可以隨心所欲的去改進,但是絲毫不會影響原有項目的代碼與結(jié)構(gòu)。

    • Pull Request

      發(fā)起請求,這個其實是基于 Fork 的,還是上面那個例子,如果別人在你基礎(chǔ)上做了改進,后來覺得改進的很不錯,應(yīng)該要把這些改進讓更多的人收益,  于是就想把自己的改進合并到原有項目里,這個時候他就可以發(fā)起一個 Pull Request(簡稱PR) ,原有項目創(chuàng)建人就可以收到這個請求,這個時候他會  仔細review你的代碼,并且測試覺得OK了,就會接受你的PR,這個時候你做的改進原有項目就會擁有了。

    • Watch

      這個也好理解就是觀察,如果你 Watch 了某個項目,那么以后只要這個項目有任何更新,你都會第一時間收到關(guān)于這個項目的通知提醒。

    • Gist

      有些時候你沒有項目可以開源,只是單純的想分享一些代碼片段,那這個時候 Gist 就派上用場了!



    參考自  簡書stormzhang大佬    鏈接:http://www.jianshu.com/p/d9f9bba4da0f


    本文地址:
    更多內(nèi)容推薦:
    專欄最新閱讀:
    更多文章閱讀請至:技術(shù)專欄
    Tips: 為您提供 微信開發(fā)H5開發(fā)微信小程序開發(fā)微信定制開發(fā)網(wǎng)站開發(fā)小程序商城開發(fā)SEO網(wǎng)站優(yōu)化視頻后期制作等定制化開發(fā)服務(wù)
    主站蜘蛛池模板: 城固县| 玉溪市| 滨海县| 翼城县| 海城市| 广宗县| 文山县| 吉水县| 云南省| 黑河市| 佛山市| 黔江区| 惠安县| 新野县| 鸡东县| 南木林县| 会理县| 凤阳县| 全椒县| 娱乐| 杂多县| 榆中县| 马山县| 广河县| 莲花县| 宜昌市| 苗栗市| 滁州市| 庆元县| 绥棱县| 滦南县| 长泰县| 中牟县| 东乌珠穆沁旗| 彭山县| 宝应县| 金沙县| 禄劝| 临沂市| 宕昌县| 东丽区|