日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

GIT将本地项目上传到Github(两种简单、方便的方法)

發布時間:2025/3/21 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GIT将本地项目上传到Github(两种简单、方便的方法) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

GIT將本地項目上傳到Github(兩種簡單、方便的方法)

一、第一種方法:

?

首先你需要一個github賬號,所有還沒有的話先去注冊吧!

https://github.com/

我們使用git需要先安裝git工具,這里給出下載地址,下載后一路直接安裝即可:

https://git-for-windows.github.io/

1.進入Github首頁,點擊New repository新建一個項目

?2.填寫相應信息后點擊create即可?

Repository name: 倉庫名稱

Description(可選): 倉庫描述介紹

Public,?Private?: 倉庫權限(公開共享,私有或指定合作者)

Initialize this repository with a README: 添加一個README.md

gitignore: 不需要進行版本管理的倉庫類型,對應生成文件.gitignore

license: 證書類型,對應生成文件LICENSE

?

4.點擊Clone or dowload會出現一個地址,copy這個地址備用。

5.接下來就到本地操作了,首先右鍵你的項目,如果你之前安裝git成功的話,右鍵會出現兩個新選項,分別為Git Gui Here,Git Bash Here,這里我們選擇Git Bash Here,進入如下界面,Test_Bluetooth即為我的項目名。

6.接下來輸入如下代碼(關鍵步驟),把github上面的倉庫克隆到本地

git clone https://github.com/CKTim/BlueTooth.git(https://github.com/CKTim/BlueTooth.git替換成你之前復制的地址)

?7.這個步驟以后你的本地項目文件夾下面就會多出個文件夾,該文件夾名即為你github上面的項目名,如圖我多出了個Test文件夾,我們把本地項目文件夾下的所有文件(除了新多出的那個文件夾不用),其余都復制到那個新多出的文件夾下,

8.接著繼續輸入命令 cd Test,進入Test文件夾

9.接下來依次輸入以下代碼即可完成其他剩余操作:

git add . ? ? ? ?(注:別忘記后面的.,此操作是把Test文件夾下面的文件都添加進來)

git commit ?-m ?"提交信息" ?(注:“提交信息”里面換成你需要,如“first commit”)

git push -u origin master ? (注:此操作目的是把本地倉庫push到github上面,此步驟需要你輸入帳號和密碼)

?

?

二、第二種方法:

?

?

第一步:我們需要先創建一個本地的版本庫(其實也就是一個文件夾)。

? ? ? ?你可以直接右擊新建文件夾,也可以右擊打開Git bash命令行窗口通過命令來創建。

? ? ? ?現在我通過命令行在桌面新建一個TEST文件夾(你也可以在其他任何地方創建這個文件夾),并且進入這個文件夾

? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ??

? ? ? ?第二步:通過命令git init把這個文件夾變成Git可管理的倉庫

? ? ? ?

? ? ? ?這時你會發現TEST里面多了個.git文件夾,它是Git用來跟蹤和管理版本庫的。如果你看不到,是因為它默認是隱藏文件,那你就需要設置一下讓隱藏文件可見。

? ? ? ?

? ? ? ?第三步:這時候你就可以把你的項目粘貼到這個本地Git倉庫里面(粘貼后你可以通過git status來查看你當前的狀態),然后通過git add把項目添加到倉庫(或git add .把該目錄下的所有文件添加到倉庫,注意點是用空格隔開的)。在這個過程中你其實可以一直使用git status來查看你當前的狀態。

? ? ? ?

? ? ? ?

? ? ? ?這里提示你雖然把項目粘貼過來了,但還沒有add到Git倉庫上,然后我們通過git add .把剛才復制過來的項目全部添加到倉庫上。

? ? ? ?

? ? ? ?

? ? ? ??第四步:用git commit把項目提交到倉庫。

? ? ? ??

? ? ? ??-m后面引號里面是本次提交的注釋內容,這個可以不寫,但最好寫上,不然會報錯,詳情自行Google。?好了,我們本地Git倉庫這邊的工作做完了,下面就到了連接遠程倉庫(也就是連接Github)

? ? ? 由于本地Git倉庫和Github倉庫之間的傳輸是通過SSH加密的,所以連接時需要設置一下:

? ? ? 第五步:創建SSH KEY。先看一下你C盤用戶目錄下有沒有.ssh目錄,有的話看下里面有沒有id_rsa和id_rsa.pub這兩個文件,有就跳到下一步,沒有就通過下面命令創建

$ ssh-keygen -t rsa -C "youremail@example.com"

? ? ? ?然后一路回車。這時你就會在用戶下的.ssh目錄里找到id_rsa和id_rsa.pub這兩個文件 ??

? ? ???

? ? ??第六步:登錄Github,找到右上角的圖標,打開點進里面的Settings,再選中里面的SSH and GPG KEYS,點擊右上角的New SSH key,然后Title里面隨便填,再把剛才id_rsa.pub里面的內容復制到Title下面的Key內容框里面,最后點擊Add SSH key,這樣就完成了SSH Key的加密。具體步驟也可看下面:

? ? ? ?

? ? ? ?

? ??

? ? ? ??第七步:在Github上創建一個Git倉庫。

? ? ?你可以直接點New repository來創建,比如我創建了一個TEST2的倉庫(因為我里面已經有了一個test的倉庫,所以不能再創建TEST倉庫)。

? ?

? ? ??? 第八步:在Github上創建好Git倉庫之后我們就可以和本地倉庫進行關聯了,根據創建好的Git倉庫頁面的提示,可以在本地TEST倉庫的命令行輸入:

$ git remote add origin https://github.com/guyibang/TEST2.git

? ? ? ??

? ? ? ??注意origin后面加的是你Github上創建好的倉庫的地址。

? ? ? ??

? ? ??第九步:關聯好之后我們就可以把本地庫的所有內容推送到遠程倉庫(也就是Github)上了,通過:

$ git push -u origin master

? ? ???由于新建的遠程倉庫是空的,所以要加上-u這個參數,等遠程倉庫里面有了內容之后,下次再從本地庫上傳內容的時候只需下面這樣就可以了:

$ git push origin master

? ? ? ??上傳項目的過程可能需要等一段時間,完成之后是這樣的:

? ? ? ??

? ? ? ??這時候你再重新刷新你的Github頁面進入剛才新建的那個倉庫里面就會發現項目已經成功上傳了:

? ? ??

? ? ? ??至此就完成了將本地項目上傳到Github的整個過程。

? ? ? 另外,這里有個坑需要注意一下,就是在上面第七步創建遠程倉庫的時候,如果你勾選了Initialize this repository with a README(就是創建倉庫的時候自動給你創建一個README文件),那么到了第九步你將本地倉庫內容推送到遠程倉庫的時候就會報一個failed to push some refs?to?https://github.com/guyibang/TEST2.git的錯。

? ? ??

? ? ??這是由于你新創建的那個倉庫里面的README文件不在本地倉庫目錄中,這時我們可以通過以下命令先將內容合并以下:

$ git pull --rebase origin master

? ? ? ?

? ? ? ?這時你再push就能成功了。

?

? ? ?總結:其實只需要進行下面幾步就能把本地項目上傳到Github

? ? ?1、在本地創建一個版本庫(即文件夾),通過git init把它變成Git倉庫;

? ? ?2、把項目復制到這個文件夾里面,再通過git add .把項目添加到倉庫;

? ? ?3、再通過git commit -m "注釋內容"把項目提交到倉庫;

? ? ?4、在Github上設置好SSH密鑰后,新建一個遠程倉庫,通過git remote add origin?https://github.com/guyibang/TEST2.git將本地倉庫和遠程倉庫進行關聯;

? ? ?5、最后通過git push -u origin master把本地倉庫的項目推送到遠程倉庫(也就是Github)上;(若新建遠程倉庫的時候自動創建了README文件會報錯,解決辦法看上面)。

?

?

三、Git命令

查看、添加、提交、刪除、找回,重置修改文件

?

[javascript]?view plaincopy
  • git?help?<command>?#?顯示command的help??
  • ??
  • git?show?#?顯示某次提交的內容?git?show?$id??
  • ??
  • git?co?--?<file>?#?拋棄工作區修改??
  • ??
  • git?co?.?#?拋棄工作區修改??
  • ??
  • git?add?<file>?#?將工作文件修改提交到本地暫存區??
  • ??
  • git?add?.?#?將所有修改過的工作文件提交暫存區??
  • ??
  • git?rm?<file>?#?從版本庫中刪除文件??
  • ??
  • git?rm?<file>?--cached?#?從版本庫中刪除文件,但不刪除文件??
  • ??
  • git?reset?<file>?#?從暫存區恢復到工作文件??
  • ??
  • git?reset?--?.?#?從暫存區恢復到工作文件??
  • ??
  • git?reset?--hard?#?恢復最近一次提交過的狀態,即放棄上次提交后的所有本次修改??
  • ??
  • git?ci?<file>?git?ci?.?git?ci?-a?#?將git?add,?git?rm和git?ci等操作都合并在一起做                                    git?ci?-am?"some?comments"??
  • ??
  • git?ci?--amend?#?修改最后一次提交記錄??
  • ??
  • git?revert?<$id>?#?恢復某次提交的狀態,恢復動作本身也創建次提交對象??
  • ??
  • git?revert?HEAD?#?恢復最后一次提交的狀態??
  • ?


    查看文件diff

    ?

    [javascript]?view plaincopy
  • git?help?<command>?#?顯示command的help??
  • ??
  • git?show?#?顯示某次提交的內容?git?show?$id??
  • ??
  • git?co?--?<file>?#?拋棄工作區修改??
  • ??
  • git?co?.?#?拋棄工作區修改??
  • ??
  • git?add?<file>?#?將工作文件修改提交到本地暫存區??
  • ??
  • git?add?.?#?將所有修改過的工作文件提交暫存區??
  • ??
  • git?rm?<file>?#?從版本庫中刪除文件??
  • ??
  • git?rm?<file>?--cached?#?從版本庫中刪除文件,但不刪除文件??
  • ??
  • git?reset?<file>?#?從暫存區恢復到工作文件??
  • ??
  • git?reset?--?.?#?從暫存區恢復到工作文件??
  • ??
  • git?reset?--hard?#?恢復最近一次提交過的狀態,即放棄上次提交后的所有本次修改??
  • ??
  • git?ci?<file>?git?ci?.?git?ci?-a?#?將git?add,?git?rm和git?ci等操作都合并在一起做                                    git?ci?-am?"some?comments"??
  • ??
  • git?ci?--amend?#?修改最后一次提交記錄??
  • ??
  • git?revert?<$id>?#?恢復某次提交的狀態,恢復動作本身也創建次提交對象??
  • ??
  • git?revert?HEAD?#?恢復最后一次提交的狀態??


  • 查看提交記錄

    ?

    ?

    [javascript]?view plaincopy
  • git?log?git?log?<file>?#?查看該文件每次提交記錄??
  • ??
  • git?log?-p?<file>?#?查看每次詳細修改內容的diff??
  • ??
  • git?log?-p?-2?#?查看最近兩次詳細修改內容的diff??
  • ??
  • git?log?--stat?#查看提交統計信息??
  • ?

    ?

    tig

    Mac上可以使用tig代替diff和log,brew install tig


    Git 本地分支管理
    查看、切換、創建和刪除分支

    ?

    [javascript]?view plaincopy
  • git?br?-r?#?查看遠程分支??
  • ??
  • git?br?<new_branch>?#?創建新的分支??
  • ??
  • git?br?-v?#?查看各個分支最后提交信息??
  • ??
  • git?br?--merged?#?查看已經被合并到當前分支的分支??
  • ??
  • git?br?--no-merged?#?查看尚未被合并到當前分支的分支??
  • ??
  • git?co?<branch>?#?切換到某個分支??
  • ??
  • git?co?-b?<new_branch>?#?創建新的分支,并且切換過去??
  • ??
  • git?co?-b?<new_branch>?<branch>?#?基于branch創建新的new_branch??
  • ??
  • git?co?$id?#?把某次歷史提交記錄checkout出來,但無分支信息,切換到其他分支會自動刪除??
  • ??
  • git?co?$id?-b?<new_branch>?#?把某次歷史提交記錄checkout出來,創建成一個分支??
  • ??
  • git?br?-d?<branch>?#?刪除某個分支??
  • ??
  • git?br?-D?<branch>?#?強制刪除某個分支?(未被合并的分支被刪除的時候需要強制)??

  • ?分支合并和reba

    ?

    ?

    [javascript]?view plaincopy
  • git?merge?<branch>?#?將branch分支合并到當前分支??
  • ??
  • git?merge?origin/master?--no-ff?#?不要Fast-Foward合并,這樣可以生成merge提交??
  • ??
  • git?rebase?master?<branch>?#?將master?rebase到branch,相當于:?git?co?<branch>?&&?git?rebase?master?&&?git?co?master?&&?git?merge?<branch>??
  • ?


    ?Git補丁管理(方便在多臺機器上開發同步時用)

    ?

    [javascript]?view plaincopy
  • git?merge?<branch>?#?將branch分支合并到當前分支??
  • ??
  • git?merge?origin/master?--no-ff?#?不要Fast-Foward合并,這樣可以生成merge提交??
  • ??
  • git?rebase?master?<branch>?#?將master?rebase到branch,相當于:?git?co?<branch>?&&?git?rebase?master?&&?git?co?master?&&?git?merge?<branch>??


  • ?Git暫存管

    ?

    ?

    [javascript]?view plaincopy
  • git?stash?#?暫存??
  • ??
  • git?stash?list?#?列所有stash??
  • ??
  • git?stash?apply?#?恢復暫存的內容??
  • ??
  • git?stash?drop?#?刪除暫存區??
  • ??
  • Git遠程分支管理??
  • ??
  • git?pull?#?抓取遠程倉庫所有分支更新并合并到本地??
  • ??
  • git?pull?--no-ff?#?抓取遠程倉庫所有分支更新并合并到本地,不要快進合并??
  • ??
  • git?fetch?origin?#?抓取遠程倉庫更新??
  • ??
  • git?merge?origin/master?#?將遠程主分支合并到本地當前分支??
  • ??
  • git?co?--track?origin/branch?#?跟蹤某個遠程分支創建相應的本地分支??
  • ??
  • git?co?-b?<local_branch>?origin/<remote_branch>?#?基于遠程分支創建本地分支,功能同上??


  • git push # push所有分支

    ?

    ?

    [javascript]?view plaincopy
  • git?push?origin?master?#?將本地主分支推到遠程主分支??
  • ??
  • git?push?-u?origin?master?#?將本地主分支推到遠程(如無遠程主分支則創建,用于初始化遠程倉庫)??
  • ??
  • git?push?origin?<local_branch>?#?創建遠程分支,?origin是遠程倉庫名??
  • ??
  • git?push?origin?<local_branch>:<remote_branch>?#?創建遠程分支??
  • ??
  • git?push?origin?:<remote_branch>?#先刪除本地分支(git?br?-d?<branch>),然后再push刪除遠程分支??


  • Git遠程倉庫管

    ?

    ?

    [javascript]?view plaincopy
  • git?remote?-v?#?查看遠程服務器地址和倉庫名稱??
  • ??
  • git?remote?show?origin?#?查看遠程服務器倉庫狀態??
  • ??
  • git?remote?add?origin?git@?github:robbin/robbin_site.git?#?添加遠程倉庫地址??
  • ??
  • git?remote?set-url?origin?git@?github.com:robbin/robbin_site.git?#?設置遠程倉庫地址(用于修改遠程倉庫地址)?git?remote?rm?<repository>?#?刪除遠程倉庫??


  • 創建遠程倉庫

    ?

    ?

    [javascript]?view plaincopy
  • git?clone?--bare?robbin_site?robbin_site.git?#?用帶版本的項目創建純版本倉庫??
  • ??
  • scp?-r?my_project.git?git@?git.csdn.net:~?#?將純倉庫上傳到服務器上??
  • ??
  • mkdir?robbin_site.git?&&?cd?robbin_site.git?&&?git?--bare?init?#?在服務器創建純倉庫??
  • ??
  • git?remote?add?origin?git@?github.com:robbin/robbin_site.git?#?設置遠程倉庫地址??
  • ??
  • git?push?-u?origin?master?#?客戶端首次提交??
  • ??
  • git?push?-u?origin?develop?#?首次將本地develop分支提交到遠程develop分支,并且track??
  • ??
  • git?remote?set-head?origin?master?#?設置遠程倉庫的HEAD指向master分支??


  • 也可以命令設置跟蹤遠程庫和本地庫

    ?

    ?

    [javascript]?view plaincopy
  • git?branch?--set-upstream?master?origin/master??
  • ??
  • git?branch?--set-upstream?develop?origin/develop??


  • ?


    方法一轉自:http://www.cnblogs.com/cxk1995/p/5800196.html

    方法二轉自:http://blog.csdn.net/zamamiro/article/details/70172900

    ?

    總結

    以上是生活随笔為你收集整理的GIT将本地项目上传到Github(两种简单、方便的方法)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。