首頁  >  文章  >  開發工具  >  實例詳解Git的常見操作

實例詳解Git的常見操作

WBOY
WBOY轉載
2022-03-25 19:31:122596瀏覽

這篇文章為大家帶來了關於Git的相關知識,其中主要介紹了一些常見的操作,包括了設定字體、創建遠端倉庫、創建本地倉庫等等,希望對大家有幫助。

實例詳解Git的常見操作

推薦學習:《Git教學

Git版本控制

開發難題

在實際開發中我們會遇到一些問題,電腦藍屏,程式碼丟了,懊悔不?磁碟壞了,文件沒了,懊悔不?時間長了,文件找不到了,懊悔不?手欠,之前程式碼運行好好的,非要去優化下,結果不如以前,信心滿滿,之前程式碼沒保存,懊悔不?怎麼解決呢?版本控制就可以解決這些難題了。

版本控制(Version Control System),它功能強大,不僅能備份你的文件,還可以實現很多:

  • 記錄文件的所有歷史變化
  • 錯誤恢復到某個歷史版本
  • 多人協作開發編輯同一個檔案
  • 實作功能差異版本(分支),如:mysql、mariadb、percona三個分支

主流的版本控制產品

#CVSMerge##Pserver,ssh# NoClient-server3-way merge, recursive merge, octopus mergeChangeset and Snapshotcustom (svn), custom (svn) over ssh, HTTP and SSL (usingWebDAV)YesDistributedMerge or lockSnapshot
名稱 模型 #並發** 模式** ** 歷史**模式 變更** 範圍** ** 網路協定** ** 原子**提交性愛
Client-server
#ChangesetFile SVN
Tree Git
###Tree#######custom, custom over ssh, rsync, HTTP/HTTPS, email, bundles######Yes############

簡而言之,各有優缺點,git要配合github遠端倉庫,可以避免分散式損壞。顯然最大的不同在於git是分散式的。 svn有權限控制,避免全被clone克隆走。 git適合純程式碼,svn適合綜合性文件管理,git svn結合起來,完美。

介紹

實例詳解Git的常見操作

Linus在1991年創建了開源的Linux,從此,Linux系統不斷發展,已經成為最大的伺服器系統軟體了。 Linus雖然創造了Linux的核心,但Linux的壯大是靠全世界熱心的志工參與的,這麼多人在世界各地為Linux編寫程式碼,那Linux的程式碼是如何管理的呢?

事實是,在2002年以前,世界各地的志工把原始碼檔案透過diff的方式發給Linus,然後由Linus本人以手工方式合併程式碼!你也許會想,為什麼Linus不把Linux程式碼放到版本控制系統裡呢?不是有CVS、SVN這些免費的版本控制系統嗎?因為Linus堅定地反對CVS和SVN,這些集中式的版本控制系統不但速度慢,而且必須連網才能使用。有一些商用的版本控制系統,雖然比CVS、SVN好用,但那是付費的,和Linux的開源精神不符。不過,到了2002年,Linux系統已經發展了十年了,代碼庫之大讓Linus很難繼續透過手作管理了,社群的弟兄們也對這種方式表達了強烈不滿,於是Linus選擇了一個商業的版本控制系統BitKeeper,BitKeeper的東家BitMover公司出於人道主義精神,授權Linux社群免費使用這個版本控制系統。

安定團結的大好局面在2005年就被打破了,原因是Linux社區牛人聚集,不免沾染了一些梁山好漢的江湖習氣。開發Samba的Andrew試圖破解BitKeeper的協議(這麼幹的其實也不只他一個),被BitMover公司發現了(監控工作做得很好!),於是BitMover公司怒了,要收回Linux社群的免費使用權。 Linus可以向BitMover公司道個歉,保證以後嚴格管教弟兄們,嗯,這是不可能的。實際情況是這樣的:Linus花了兩週時間自己用C寫了一個分散式版本控制系統,這就是Git!一個月之內,Linux系統的原始碼已經由Git管理了!牛是怎麼定義的呢?吃瓜群眾可以體會一下。

Git迅速成為最受歡迎的分散式版本控制系統,尤其是2008年,GitHub網站上線了,它為開源專案免費提供Git存儲,無數開源專案開始遷移至GitHub,包括jQuery,PHP, Ruby等等。歷史就是這麼偶然,如果不是當年BitMover公司威脅Linux社區,可能現在我們就沒有免費而超好用的Git了。

組成結構圖

實例詳解Git的常見操作

  • #工作空間:用來保存專案的元資料和物件資料庫的地方。這是 Git 中最重要的部分,從其它電腦克隆倉庫時,拷貝的就是這裡的資料。
  • 本地索引:保存了下次將提交的文件列表信息,一般在 Git 倉庫目錄中。有時候也被稱為"索引",不過一般說法還是叫暫存區域。
  • 本地倉庫,之所以說git 快,大部分提交都是對本地倉庫而言的,不依賴網絡,最後一次會推送的到遠端倉庫。
  • 遠端倉庫:可以看做是github,它是一個遠端倉庫,它提供web服務供大家方便下載、查看、提交、儲存。

指令速查

實例詳解Git的常見操作

#常用指令

實例詳解Git的常見操作

  • 克隆倉庫(第一次時) clone 克隆
  • 對工作目錄中文件新增、修改、刪除操作
  • #暫存文件,將文件的快照放入暫存區add 新增
  • 把暫存區的內容提交到本地倉庫commit 提交
  • #把本地倉庫的內容提交到遠端倉庫push 推送
  • 從遠端倉庫下載最新內容pull 拉取

碼雲端配置環境

註冊帳號

實例詳解Git的常見操作

每個人必須有自己的帳號,先官網註冊帳號:

https://gitee.com/

登入

實例詳解Git的常見操作

安裝GIT

Git -2.27.0-64-bit,一路next,安裝完桌面右鍵選單有以下兩項,安裝完成。選擇Git Bash,進入git客戶端。

Windows開始功能表:

實例詳解Git的常見操作

實例詳解Git的常見操作

#設定字型

實例詳解Git的常見操作

實例詳解Git的常見操作

實例詳解Git的常見操作

實例詳解Git的常見操作

查詢git

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1gg9jRd2-1623157728805)(RackMultipart20210608-4-134iydv_html_b0844519a8530850.png)] [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rWgE9Vyn-1623157728806)(RackMultipart20210608-4-134iydv_html_48bbed748fd9ffd2.png)]
實例詳解Git的常見操作

碼雲建立倉庫

建立遠端倉庫(在碼雲官網路上)

實例詳解Git的常見操作

建立本機倉庫(在你的磁碟中)實例詳解Git的常見操作

建立測試檔, 並在本機倉庫執行以下指令:

git config --global user.name "cgblpx" #配置注册时的用户名
git config --global user.email "2250432165@qq.com"  #配置注册时的邮箱
git config --list #检查配置信息
mkdir j2ee
cd j2ee
git init								#初始化
在本地仓库中,创建文件1.txt
git add 1.txt						#新增文件到git中处理
git commit -m "first commit"			#提交,设置说明信息
git remote add origin https://gitee.com/nutony/j2ee.git	#远程仓库
git push -u origin master #把本地仓库的资源 提交给Git服务器

第一次執行會彈出下面的使用者名稱、密碼框,填寫碼雲的帳號資訊就可以

##刷新頁面,如果創建成功,Git上介面發生變化如下樣子,這樣環境就完成了

##########每日任務######每日早上開始工作前拉取最新團隊其他人提交的內容,每日下班前提交可用的內容######新文件######建立專案目錄,建立新文件,或複製已有文件或複製已有目錄: ###

實例詳解Git的常見操作

推送

把本地文件上传到远程仓库中:

$ git add .								#添加当前目录下文件
$ git commit -m "j2ee part"				#提交,设置备注
$ git push -u origin master				#推送到远程仓库

實例詳解Git的常見操作

拉取/下载

把远程仓库中的内容下载到本地:

$ git pull										#从服务器拉取最新内容

實例詳解Git的常見操作

常见错误

Authentication failed for

實例詳解Git的常見操作

任何路径下输入都可以:

git config --system --unset credential.helper

然后提交操作时,会出现询问框,重新输入用户名提示

failed to push some refs to…

實例詳解Git的常見操作

这是是因为readme.md 没有存在在本地git中

git pull --rebase origin master #

$ git push -u origin master #推送到远程仓库

–rebase用在合并代码的时候其作用就是在一个随机创建的分支上处理冲突,避免了直接污染原来的分区。

fatal: remote origin already exists

1、先输入$ git remote rm origin(删除关联的origin的远程库)

2、再输入重新执行 git push -u origin master

3、如果输入第1步 还是报错的话,error: Could not remove config section 'remote.origin'. 我们需要修改gitconfig文件的内容

4、找到你的github的安装路径,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc

5、找到一个名为gitconfig的文件,打开它把里面的[remote "origin"]那一行删掉就好了!

SSL certificate problem: unable to get local issuer certificate

	--执行命令解决: git config --global http.sslVerify false
	--重新push: git push -u origin master

邮箱是私有的报错

實例詳解Git的常見操作
需要在码云上,把邮箱改成公开的才行
實例詳解Git的常見操作

IDEA整合Git

在Gitee创建新的仓库

在网页中创建仓库名称:cgb2109-3

进入workspace

进入workspace,再进入你的项目目录,直接执行clone命令:

git clone https://gitee.com/cgblpx/cgb2109-3.git
也许:
需用执行其他的账号密码等命令

打开IDEA的工程中,你会发现直接就能提交或者拉取代码了

實例詳解Git的常見操作

推荐学习:《Git教程

以上是實例詳解Git的常見操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除