亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

Git原理和常用操作

2024-07-21 02:03:05
字體:
來源:轉載
供稿:網友

由于gitlab的免費私有倉庫的優勢,所以在公司使用gitlab會多一些,對于gitlab來說,注冊需要翻墻,而登錄不需要。

關于git是做什么的,這里就不多說了。相信大家知道,這里就帶大家,一小時掌握git原理,學會git操作。

Git 工作流程

在gitlab上一般每個人或每個項目或者每個bug都會有自己獨立的分支。分支不影響主分支master。

一般工作流程如下:

  • 克隆 Git 資源作為工作目錄。
  • 在克隆的資源上添加或修改文件。
  • 如果其他人修改了,你可以更新資源。
  • 在提交前查看修改。
  • 提交修改。
  • 在修改完成后,如果發現錯誤,可以撤回提交并再次修改并提交。

Git 工作區、暫存區和版本庫

這里理解git的重心。因為我們使用git,就是在本地電腦上,本地電腦會有自己的倉庫,可以在每個項目文件夾的根目錄均設置一個倉庫。本地倉庫和本地分支和遠程分支是分離的??梢酝ㄟ^pull拉取遠程分支到本地,或push,推送本地分支到遠程分支。

  • 工作區:就是你在電腦里能看到的目錄。
  • 暫存區:英文叫stage, 或index。一般存放在 “.git目錄下” 下的index文件(.git/index)中,所以我們把暫存區有時也叫作索引(index)。
  • 版本庫:工作區有一個隱藏目錄.git,這個不算工作區,而是Git的版本庫。

下面這個圖展示了工作區、版本庫中的暫存區和版本庫之間的關系:

圖中左側為工作區,右側為版本庫。在版本庫中標記為 “index” 的區域是暫存區(stage, index),標記為 “master” 的是 master 分支所代表的目錄樹。

圖中我們可以看出此時 “HEAD” 實際是指向 master 分支的一個”游標”。所以圖示的命令中出現 HEAD 的地方可以用 master 來替換。

圖中的 objects 標識的區域為 Git 的對象庫,實際位于 “.git/objects” 目錄下,里面包含了創建的各種對象及內容。

當對工作區修改(或新增)的文件執行 “git add” 命令時,暫存區的目錄樹被更新,同時工作區修改(或新增)的文件內容被寫入到對象庫中的一個新的對象中,而該對象的ID被記錄在暫存區的文件索引中。

當執行提交操作(git commit)時,暫存區的目錄樹寫到版本庫(對象庫)中,master 分支會做相應的更新。即 master 指向的目錄樹就是提交時暫存區的目錄樹。

當執行 “git reset HEAD” 命令時,暫存區的目錄樹會被重寫,被 master 分支指向的目錄樹所替換,但是工作區不受影響。

當執行 “git rm --cached <file>” 命令時,會直接從暫存區刪除文件,工作區則不做出改變。

當執行 “git checkout .” 或者 “git checkout -- <file>” 命令時,會用暫存區全部或指定的文件替換工作區的文件。這個操作很危險,會清除工作區中未添加到暫存區的改動。

當執行 “git checkout HEAD .” 或者 “git checkout HEAD <file>” 命令時,會用 HEAD 指向的 master 分支中的全部或者部分文件替換暫存區和以及工作區中的文件。這個命令也是極具危險性的,因為不但會清除工作區中未提交的改動,也會清除暫存區中未提交的改動。

下面通過幾個常用的操作指令,通過注釋,就可以快速入手。由于大部分情況,我們并不需要在本地創建倉庫,所以這里就不介紹在本地創建倉庫了。

git安裝配置

可以參考,在這篇文章中寫過 http://www.49028c.com/article/148066.htm

git使用前配置

配置賬號密碼和編輯器。首先要讓git知道我們登錄gitlab的賬號和郵箱。git每次聯系gitlab或github都會使用我們配置的賬號和郵箱

git config --global user.name "luanpeng"git config --global user.email xxxxx@xxxx.com

至于其他的配置,使用默認即可。

  • 注意:每個目錄下是一個倉庫,倉庫信息通過目錄下的.git文件保存

將本地項目文件夾,上傳到遠程倉庫指定分支的某個文件夾

要修改遠程倉庫的分支內容,需要我們先把遠程倉庫的某個分支pull到本地,在本地添加修改的內容,在push到遠程。

所謂的修改包括,添加文件,刪除文件,清空文件等等。

比如我想將我的文件夾上傳到遠程倉庫的luanpeng分支下的ios/server文件夾下面。

選擇一個目錄用來存儲遠程倉庫分支的內容。git clone -b luanpeng git@gitlab.com:luanpeng/cloud-ai.git  將遠程倉庫的分支luanpeng下載到當前目錄。默認master分支cd 項目目錄git branch  查看分支,顯示的就是luanpeng分支在文件夾中對應位置添加你的項目文件或文件夾,回到命令行。git add . 添加當前目錄下的所有文件到緩存區git status 查看緩存區和版本庫的所有變化git commit -m "describe" //提交監督的內容的變化到本地版本庫創建一個遠程倉庫的鏈接git remote add cloudai git@gitlab.com:luanpeng/cloud-ai.git  使用cloudai這個名字代表遠程倉庫git push cloudai luanpeng  將當前分支上傳到遠程倉庫的分支。git remote -v   查看遠程倉庫的鏈接git remote rm cloudai  刪除遠程倉庫鏈接

如果你是自己在本地通過
git init創建的倉庫,想通過push上傳到遠程倉庫,需要先

獲取遠程庫與本地同步合并(如果遠程庫不為空必須做這一步,否則后面的提交會失?。ゞit pull --rebase cloudai luanpeng  將遠程倉庫的分支拉取到本地

本地倉庫管理

如果你想在自己的電腦上建一個倉庫,自己管理自己的代碼,也備以后使用??梢允褂孟旅娴牟僮?/p>

倉庫初始化mkdir projectdir   創建一個目錄cd projectdir    進入目錄git init     創建一個倉庫,自動創建master分支手動在工作區(也就是這個文件夾內)拷貝,剪切,修改文件git add .     //添加當前文件夾下的所有文件添加到緩存區,手動添加的文件,必有add以后才能被添加到緩存區git status    查看緩存區和版本庫之間的文件差別git commit -m "describe" //將緩存區的內容更新到版本庫分支git branch   查看當前分支git branch -a  查看所有分支。前面帶*號的代表你當前工作目錄所處的分支git branch branch-name 當前倉庫添加分支,創建branch-name分支。需要你向里面添加文件并提交git checkout branch-name #切換到branch-name分支,那工作區就會只顯示該分支下的文件夾。git branch -D branch-name 刪除本地分支 git branch --delete branch-name

遠程倉庫的管理

從本地分支鏈接到遠程分支,稱為跟蹤分支(tracking branch)。跟蹤分支是一種和遠程分支有直接聯系的本地分支。在跟蹤分支里輸入git push,Git 會自行推斷應該向哪個服務器的哪個分支推送數據。反過來,在這些分支里運行git pull 會獲取所有遠程索引,并把它們的數據都合并到本地分支中來.

  • 注意:本地創建的遠程倉庫和跟蹤分支,只是到遠程倉庫和分支的鏈接

我們可以在本地管理遠程倉庫或遠程分支

git remote -v   查看遠程倉庫的鏈接git remote rm cloudai  刪除cloudai遠程倉庫鏈接git remote add cloudai git@gitlab.com:luanpeng/cloud-ai.git  建立一個遠程倉庫的鏈接git push cloudai :luanpeng  刪除遠程倉庫的luanpeng分支查看本地創建的遠程分支鏈接git branch  查看本地分支git branch -a  查看所有分支git branch -r  查看所有遠程分支鏈接git branch -r -d origin/branchname  刪除本地的遠程分支鏈接pull和push到遠程分支git pull <遠程庫名> <遠程分支名>:<本地分支名>    //拉取遠程倉庫的分支,當本地分支,本地分支可以不寫默認為當前分支git pull <遠程庫名> <遠程分支名>git push git@gitlab.com:luanpeng/cloud-ai.git master // 把本地倉庫提交到遠程倉庫的master分支中git remote add cloudai git@gitlab.com:luanpeng/cloud-ai.gitgit push cloudai luanpeng需要說明的是,默認情況下這條語句等價于提交本地的master倉庫到遠程倉庫,并作為遠程的luanpeng分支。git push cloudai master:luanpeng  提交本地的luanpeng分支到遠程倉庫的luanpeng分支git push cloudai :luanpeng  提交本地空分支到遠程倉庫的分支,也就是刪除遠程倉庫的分支注意:我們修改了分支下的文件,都要git add . 添加到緩存去git commit -m "describe" 更新到版本庫git push cloudai master:luanpeng  將版本庫中的更新到遠程分支

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對武林網的支持。如果你想了解更多相關內容請查看下面相關鏈接

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品va在线看黑人动漫| 中文字幕国产亚洲| 亚洲深夜福利视频| 中文字幕成人精品久久不卡| 国产成人短视频| 精品福利樱桃av导航| 亚洲国产91精品在线观看| 最近2019年中文视频免费在线观看| 国产精品入口尤物| 久久久精品美女| 久久香蕉国产线看观看av| 日韩中文字幕视频在线| 亚洲码在线观看| 日韩精品视频三区| 黑人极品videos精品欧美裸| 91精品久久久久久久久久久久久| 国产欧美日韩最新| 欧美精品精品精品精品免费| 亚洲成人av片| www.国产一区| 亚洲精品第一页| 成人久久一区二区| 亚洲精品女av网站| 欧美视频在线观看免费网址| 少妇久久久久久| 国产精品流白浆视频| 精品国产一区二区三区久久狼黑人| 日韩精品一区二区三区第95| 日韩中文在线视频| 欧美午夜丰满在线18影院| 久久久久99精品久久久久| 欧美专区在线视频| 亚洲另类图片色| 午夜精品一区二区三区av| 日韩欧美黄色动漫| 激情久久av一区av二区av三区| 日韩欧美精品网址| 欧美亚洲国产日韩2020| 中文日韩电影网站| 国产丝袜高跟一区| 日韩有码在线视频| 久久久久久伊人| 国产精品入口日韩视频大尺度| 精品久久中文字幕| 国产精品视频资源| 日韩男女性生活视频| 69影院欧美专区视频| 最新日韩中文字幕| 亚洲综合精品一区二区| 欧美激情二区三区| 最近的2019中文字幕免费一页| 欧美制服第一页| 亚洲男人天堂久| 97免费视频在线播放| 欧美精品免费在线| 欧美午夜无遮挡| 亚洲精品免费一区二区三区| 欧美激情在线一区| 91影视免费在线观看| 97成人精品视频在线观看| 精品久久久香蕉免费精品视频| 在线观看日韩专区| 亚洲国产美女精品久久久久∴| 亚洲欧洲国产伦综合| 欧美激情在线观看视频| 中文字幕在线精品| 91午夜在线播放| 国产精品国模在线| 91视频国产一区| 亚洲免费av片| 国内偷自视频区视频综合| 亲爱的老师9免费观看全集电视剧| 日韩在线激情视频| 久久精品久久久久电影| 久久久久久高潮国产精品视| 国产精品自拍偷拍视频| 国产aaa精品| 日本欧美黄网站| 青青草成人在线| 亚洲天堂2020| 亚洲福利精品在线| 视频在线观看一区二区| 欧美性xxxxxx| 91精品国产91久久久| 亚洲成人网av| 日韩一区二区在线视频| 日韩激情av在线免费观看| 欧美老女人bb| 日韩中文字幕在线看| 日韩精品免费综合视频在线播放| 中文字幕精品久久久久| 欧美午夜精品久久久久久久| …久久精品99久久香蕉国产| 国产精品午夜视频| 国产精品2018| 国产精品扒开腿做爽爽爽的视频| 亚洲天堂男人天堂女人天堂| 黄色精品一区二区| 欧美国产日韩二区| 国产一区二区三区欧美| 亚洲白虎美女被爆操| 日本精品视频网站| 日韩美女av在线免费观看| 国产午夜精品久久久| 精品国产一区二区三区在线观看| 国产日韩综合一区二区性色av| 欧美日韩美女在线| 国产精品偷伦视频免费观看国产| 国外成人免费在线播放| 日韩欧美国产网站| 欧美二区在线播放| 欧美激情亚洲视频| 日韩av电影中文字幕| 色阁综合伊人av| 国产视频精品va久久久久久| 欧美日韩国产中字| 一本色道久久综合亚洲精品小说| 亚洲一区二区自拍| 波霸ol色综合久久| 国产精品美女主播在线观看纯欲| 国色天香2019中文字幕在线观看| 欧美成人h版在线观看| 亚洲欧美另类国产| 91高清在线免费观看| 欧美裸体xxxx| 91国内免费在线视频| 欧美一区二区影院| 欧美视频在线免费看| 欧美日韩国产页| 欧美极品欧美精品欧美视频| 亚洲国产精品成人va在线观看| 国模精品视频一区二区| 国产成人自拍视频在线观看| 日韩精品在线观看视频| 在线看国产精品| 国产精品99久久久久久人| 91色精品视频在线| 欧美性受xxx| 色偷偷偷综合中文字幕;dd| 一区二区日韩精品| 欧美激情精品久久久| 国产成人精品久久亚洲高清不卡| 国产一区二区三区毛片| 午夜精品久久久久久久99热浪潮| 91精品久久久久久久久| 日韩性xxxx爱| 国产脚交av在线一区二区| 97视频网站入口| 日韩精品视频免费在线观看| 亚洲成人av在线| 国产精品中文字幕在线| zzjj国产精品一区二区| 91久久夜色精品国产网站| 在线观看日韩www视频免费| 欧美成人免费一级人片100| 日韩欧美a级成人黄色| 日韩av在线播放资源| 中文字幕日韩专区| 国产精品免费一区二区三区都可以| 亚洲人成绝费网站色www| 中文字幕在线视频日韩| 国产999精品久久久| 91成人在线播放| 久久精品国产99国产精品澳门|