校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Git的簡單理解及基礎操作命令詳解

Git的簡單理解及基礎操作命令詳解

熱門標簽:臨沂ai電銷機器人招商 華創e路航彩票銷售點地圖標注 suitecrm 地圖標注 外呼系統號顯示星號怎么看 高德地圖標注常顯 銀川語音外呼系統中心 揭陽電腦外呼系統公司 承德地圖標注公司收費 鶴壁外呼系統公司

git和svn有什么區別呢?

git采用分布式版本庫管理,而svn采用集中式版本庫管理。

集中式版本庫管理需要有一臺存放版本庫的服務器,開發人員在開發的時候分別從服務器拉取過來最新版本,然后創建/進入分支進行開發,開發完成之后將分支提交或者合并到主分支。

分布式版本庫管理允許開發者們將版本庫搬到自己的電腦上,在開發過程中,開發者們可以根據不同的目的創建分支和修改代碼,開發完成后進行各項合并,這樣做提高了開發的敏捷性和速度,并且減少了公共服務器的壓力,且任意兩個開發者之間的沖突更容易得到解決。

git安裝

首先,你可以在你的電腦上執行"git"命令,檢查是否已安裝git。如果已安裝,則會列出它的選項和最常用的子命令。如果未安裝,則打印提示未安裝或不是內部/外部命令。

安裝包下載地址:git.download,按需選擇吧,想必憑各位多年的電腦開關機經驗,QQ、瀏覽器、游戲等的安裝卸載經驗,這步驟應該不會出現什么問題。

git的配置

安裝完git,我們執行"git"命令查看它的選項和最常用的子命令。

//這里命令也就不一一列出了,大家自己執行看下即可(讓我偽裝下注釋,謝謝~)

然后就是配置你的名稱及郵箱:

git config --global user.name "yeshou"
git config --global user.email xxx@qq.com

我們可以通過根目錄下的.gitconfig文件查看配置信息,這里加了--global,所以是全局配置,若其他倉庫木有單獨配置,則使用的是全局的,如果其他倉庫需要單獨配置,去掉--global重復以上操作即可,同理,可在對應倉庫文件夾下看.gitconfig文件的配置信息(友情提示,這是個隱藏文件)。

生成SSH-key

配置完了git的提交人信息,我們在本地生成個ssh-key,用來驗證提交者身份。

ssh-keygen -t rsa -C xxx@qq.com

然后在.ssh文件夾下找到id_rsa.pub文件,里面內容復制到github的"setting"下的"SSH and GPG keys"的添加過程的輸入框里,用以生成ssh-key。

在github上實踐

在github上創建一個遠程倉庫,登錄github網站,通過右上角"New respository"新建一個比如名為"git-test"的項目倉庫。我們打開項目倉庫的首頁,復制倉庫地址(既然配置了SSH,那就選擇SSH咯;當然,也可以通過HTTP的來clone),可以通過git clone 命令將遠程倉庫拉到本地。

git clone git@github.com:your-github-name/git-test.git

這樣就把項目拉取到當前文件夾下了,so easy~       之后,我們可以操作本地文件夾進行增刪改查等操作,下面列出一些操作。

在操作之前,需要了解工作區和暫存區和版本庫的概念。

工作區:電腦中的文件夾內容

版本庫:工作區有一個隱藏目錄.git,這個不算工作區,而是Git的版本庫。git的版本庫里存了很多東西,其中最重要的就是稱為stage(或者叫index)的暫存區,還有Git為我們自動創建的第一個分支master,以及指向master的一個指針叫HEAD。

暫存區:該內容存在于隱藏的.git目錄下,可以簡單理解為,需要提交的文件修改通通放到暫存區,然后一次性提交暫存區的所有修改。

詳情點擊此鏈接,有圖有真相啊~

git基礎操作命令

文件操作

將文件添加到版本庫

git add TEST.md //添加了一個TEST.md文件

將版本庫中文件重命名

git mv TEST.md LALALA.md //改名:TEST => LALALA

將文件從版本庫刪除

git rm LALALA.md // 刪除LALAL.md 文件

查看操作記錄

git log  //如果覺得信息太多,可以加參數"--pretty=oneline",這樣就能夠輸出簡短信息。

列出master分支的歷史操作

git log master 

列出某個文件的歷史操作

git log LALALA.md

然后在上一句操作中你會發現,追溯LALALA文件的操作歷史的時候看不到它改名之前的歷史,怎么辦呢?

git log --follow LALALA.md //加上"--follow"參數會讓git在日志中內容相關聯的整個歷史記錄

查看你的每一次操作命令

git reflog //列出每次你的操作命令,如:log、add、rm等

版本回退

git reset --hard HEAD^ //HEAD表示當前版本,加^表示上一個,加^^表示上上個...
git reset --hard commit-id //我們可以通過git log拿到指定版本的提交id,并且返回到指定版本

查看工作區狀態

git status //可看出是否對文件進行修改

將修改提交到暫存區

git add fileName //添加修改的文件
git commit -m "message" //提交修改的文件,并且輸入修改信息

將暫存區的文件提交到遠程倉庫

git push (master) //不填則默認提交到當前分支,也可提交到指定分支

查看工作區與版本庫中最新版本之間的不同

git diff HEAD fileName //當文件在工作區修改后還未提交到版本庫

丟棄在工作區所做的修改

git checkout -- index.html //丟棄對index.html的修改

將遠程倉庫的修改拉取到本地

git fetch (master) //不填則默認拉取當前分支的最新修改,也可指定需要拉取的分支,fetch之后并不會合并修改
git pull (master) //不填則默認拉取當前分支的最新修改,也可指定需要拉取的分支,pull之后合并修改

分支操作

分支是在軟件項目中啟動一條單獨的開發線的基本方法,使得開發能夠在多個方向上同時進行,分支一般會被調解并與其他分支合并,用來合并不同的開發。通俗來講,相當于將一個大任務分解成多個小任務,分給多人同時進行處理,完了再組合到一起,于是完成了個大任務。

創建分支

git branch dev //創建了一個dev分支,然而并沒切換到這個分支上

切換分支

git checkout dev //切換到dev分支上

創建并且切換分支

git checkout -b dev //創建了一個dev分支,并且切換到這個分支上

打了一遍上面的命令,然后屁顛屁顛跑去github刷新看分支,然而并沒有,少年莫慌,那是因為你還沒將分支提交到遠程倉庫~

將分支放到遠程倉庫

git push origin dev //好了,將dev分支提交到遠程倉庫了,然后又跑去刷新了github,這次終于看到分支的存在了

查看分支

git branch  //帶星號的是當前分支,加參數"-r"查看遠程分鐘,"-a"查看所有分支

合并分支

注:首先明確目前在哪個分支上,不可以在當前分支上將此分支合并到其他分支。

git merge dev //假如我現在在master分支上,然后合并了dev分支

通常合并分支的時候,git使用Fast-forward模式,我們可以在合并的時候使用參數"--no-ff"禁用該模式

git merge --no-ff -m "" dev //這樣的合并會創建一個新的commit

這時分支合并了,然后你會發現分支依然存在,怎么辦呢?

刪除分支

git branch -d dev //刪除dev分支
git branch -D dev //強制刪除dev分支

這時候問題又來了,去github刷新看dev分支還是存在的...

刪除遠程分支

git push origin --delete dev //刪除了遠程倉庫中的dev分支

刪除不存在對應本地分支的遠程分支

git remote prune origin

刪除不存在對應遠程分支的本地分支

git fetch -p 

查看分支合并流程圖

git log --graph //明確的看到何時創建/修改/合并分支

標簽操作

標簽可以簡單的看做是一個標識點或者參考點。它是個靜態的名字,不隨時間的推移而改變。而分支是動態的,且隨著你每次的提交而移動。他們之間看起來相似,但我們需要分清楚他們,且勿將其混淆。

創建一個標簽

git tag v0.1 // 創建一個標簽,名為v0.1=> version 0.1

將標簽推到遠程倉庫

git push origin v0.1

一次性推送所有標簽

git push origin --tags

刪除本地標簽

git tag -d v0.1 //刪除名為v0.1的標簽

刪除遠程倉庫的標簽

git push origin :refs/tags/v0.1

進度暫存操作(類似游戲的存檔)

git提供一個"存檔"功能。比如,當你正在改一個功能的時候,臨時需要修改另一個功能,而且比較重要,而又不能直接checkout丟棄當前的修改,這時候git提供的"存檔"就好用了。可以將之前的修改暫時存起來,把工作區恢復到干凈的環境供你修改另一個功能。

創建一個"存檔"

git stash //暫時存儲了當前的操作進度

查看"存檔"的列表

git stash list

查看"存檔"內容

git stash show stash@{index} //查看相對索引的存檔內容,不加stash@{index}則默認是最近的"存檔"

恢復"存檔"

git stash apply stash@{index} //恢復相對索引的存檔內容,不加stash@{index}則默認是最近的"存檔"

恢復之后會發現,這個"存檔"還在存檔列表中,簡直跟玩rpg游戲一樣么~

刪除"存檔"

git stash drop stash@{index} //刪除相對索引的存檔內容,不加stash@{index}則默認是最近的"存檔"

清除所有"存檔"

git stash clear //畢竟一個個drop太累

給命令配置別名

如果你嫌一些命令麻煩或者太長或者不好記等等...

git config --global alias.cmt commit

然后你就可以使用"git cmt"代替"git commit"了。

刪除別名

打開.gitconfig文件,找到[alias]的內容,刪除對應別名的行內容即可

.gitignore文件

可以在文件夾下添加.gitignore文件,告訴git在執行命令的時候忽略一些內容。

具體操作:打開.gitignore,在后面一行添加需要忽略的內容。

文件夾: 如"src/" //忽略src文件夾下的所有文件

文件:如"*.jpg" //忽略以jpg為后綴的文件

...

向git求助

git help //列出參數列表及命令列表
git help command //打開該命令的html文檔
git command --help //打開該命令的html文檔

總結

以上所述是小編給大家介紹的Git的簡單理解及基礎操作命令,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:
  • 手把手教你使用Git(圖文教程)
  • Git 命令行教程及實例教程(附github注冊)
  • git使用教程(最詳細、最傻瓜)
  • Git ssh 配置及使用方法
  • Git 常用命令速查表(圖文+表格)
  • git工具常用命令及ssh操作方法

標簽:汕尾 棗莊 忻州 萊蕪 咸寧 三沙 七臺河 許昌

巨人網絡通訊聲明:本文標題《Git的簡單理解及基礎操作命令詳解》,本文關鍵詞  Git,的,簡單,理解,及,基礎,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Git的簡單理解及基礎操作命令詳解》相關的同類信息!
  • 本頁收集關于Git的簡單理解及基礎操作命令詳解的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    国产很黄免费观看久久| 丝瓜av网站精品一区二区| 欧美一区二区在线播放| 色猫猫国产区一区二在线视频| 国产伦精一区二区三区| 国产精品亚洲人在线观看| 国产一区二区三区精品欧美日韩一区二区三区| 婷婷激情综合网| 亚洲电影视频在线| 日韩av在线发布| 美国精品在线观看| 九色综合狠狠综合久久| 国产精品一区不卡| 不卡视频一二三| 91国模大尺度私拍在线视频| 日本韩国精品一区二区在线观看| 色婷婷综合中文久久一本| 91国偷自产一区二区三区观看 | 麻豆国产精品视频| 日日夜夜免费精品| 极品少妇一区二区| 国产成人在线视频免费播放| av一区二区不卡| 在线免费观看日本欧美| 91精品欧美久久久久久动漫| www日韩大片| 中文字幕av一区二区三区| 亚洲欧美激情小说另类| 午夜精品影院在线观看| 美女任你摸久久| www.综合网.com| 欧美人伦禁忌dvd放荡欲情| 欧美一级艳片视频免费观看| 中文字幕不卡三区| 午夜视频一区二区三区| 国产一区二区在线免费观看| 91福利视频在线| 日韩欧美123| 一区二区三区中文字幕电影| 欧美a一区二区| 91在线视频观看| 日韩久久精品一区| 亚洲视频在线一区| 激情成人午夜视频| 欧美视频中文字幕| 国产欧美一区二区精品性色超碰| 亚洲国产美女搞黄色| 国产盗摄精品一区二区三区在线| 欧美在线观看视频一区二区三区| 久久久久久97三级| 日韩精品1区2区3区| 91在线观看高清| 国产亚洲欧美色| 日本人妖一区二区| 欧洲亚洲国产日韩| 国产精品久久国产精麻豆99网站| 六月丁香婷婷色狠狠久久| 色拍拍在线精品视频8848| 国产亚洲女人久久久久毛片| 男人的j进女人的j一区| 欧美日韩亚洲综合一区| 中文字幕一区av| 国产精品一区二区在线看| 日韩一区二区免费视频| 亚洲国产美国国产综合一区二区| 成人av在线资源网站| 国产日本一区二区| 国产一区二区三区免费看| 日韩一级黄色大片| 美女一区二区三区| 欧美精品丝袜久久久中文字幕| 亚洲人成亚洲人成在线观看图片| jiyouzz国产精品久久| 2020国产精品自拍| 久88久久88久久久| 久久一区二区三区四区| 国内外精品视频| 国产亚洲一二三区| 成人一区二区三区视频| 久久久精品日韩欧美| 国产福利91精品一区| 久久精品无码一区二区三区| 国产一区二区网址| 国产精品久久久久7777按摩| av电影在线观看不卡| 中文字幕一区二区三区视频 | 久久夜色精品一区| 国产真实乱对白精彩久久| 2020国产精品自拍| 懂色av一区二区在线播放| 中文字幕免费不卡| 99久精品国产| 午夜精品一区在线观看| 日韩三级免费观看| 国产精品66部| 亚洲人成亚洲人成在线观看图片| 欧美三级一区二区| 亚洲电影一级黄| 欧美成人一区二区三区片免费 | 日本道色综合久久| 亚洲第一av色| 26uuuu精品一区二区| 99热在这里有精品免费| 亚洲一区二区三区爽爽爽爽爽| 91精品免费观看| 国产一区二区三区四区五区入口| 亚洲少妇最新在线视频| 欧美精品丝袜中出| 国产91在线看| 亚洲va欧美va天堂v国产综合| 欧美大胆人体bbbb| 91在线观看污| 久久66热re国产| 亚洲欧美国产77777| 日韩视频永久免费| 色狠狠桃花综合| 黄一区二区三区| 亚洲午夜精品17c| 中文字幕乱码日本亚洲一区二区| 一本色道a无线码一区v| 国内精品伊人久久久久av影院| 亚洲视频图片小说| 26uuu久久综合| 欧美性大战久久久久久久蜜臀| 国产在线精品一区二区三区不卡| 亚洲资源中文字幕| 日本一区二区视频在线观看| 555www色欧美视频| 日本电影欧美片| 成人免费视频播放| 久久精品99国产精品日本| 一区二区国产视频| 国产精品免费视频网站| 日韩欧美一区电影| 91精品欧美久久久久久动漫 | 欧美伦理电影网| 91蜜桃网址入口| 成人精品国产免费网站| 蜜臀精品一区二区三区在线观看| 亚洲免费毛片网站| 亚洲天堂网中文字| 国产精品欧美久久久久无广告 | a亚洲天堂av| 成人天堂资源www在线| 国产一区日韩二区欧美三区| 日本欧美一区二区三区乱码| 亚洲国产视频在线| 亚洲国产精品久久人人爱| 一区二区三区欧美视频| 亚洲色图在线看| 亚洲欧洲美洲综合色网| 欧美国产精品一区| 国产蜜臀av在线一区二区三区| 久久久精品综合| 国产日韩欧美制服另类| 亚洲国产成人一区二区三区| 国产日韩欧美在线一区| 欧美国产丝袜视频| 中文字幕一区免费在线观看 | 91精品福利在线| 91成人在线精品| 在线欧美一区二区| 欧美在线视频不卡| 欧美肥妇free| 日韩一区二区在线看| 欧美va亚洲va| 久久久精品黄色| 国产精品免费人成网站| 日韩一区欧美小说| 亚洲一区在线观看网站| 日韩高清一级片| 国产美女在线观看一区| 成人激情小说网站| 欧洲一区二区三区在线| 91精品国产色综合久久不卡蜜臀| 欧美一激情一区二区三区| 久久久久久久久岛国免费| 中文字幕一区二区三区蜜月| 一区二区高清视频在线观看| 日本成人超碰在线观看| 国产成人av电影免费在线观看| 99精品视频一区二区三区| 欧美日韩一级二级| 久久久精品tv| 亚洲一区欧美一区| 激情久久五月天| 欧洲亚洲精品在线| 久久视频一区二区| 亚洲裸体xxx| 国产一区二区美女诱惑| 色噜噜狠狠成人网p站| 欧美岛国在线观看| 亚洲色图.com| 紧缚捆绑精品一区二区| 色哟哟日韩精品| 精品国产一二三| 午夜日韩在线观看| 99视频在线观看一区三区| 欧美一级专区免费大片| 亚洲免费观看高清|