您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關Git中常見的操作有哪些的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
在實際開發中我們會遇到一些問題,電腦藍屏,代碼丟了,懊悔不?磁盤壞了,文件沒了,懊悔不?時間長了,文件找不到了,懊悔不?手欠,之前代碼運行好好的,非要去優化下,結果還不如以前,信心滿滿,之前代碼沒保存,懊悔不?怎么解決呢?版本控制就可以解決這些難題了。
版本控制(Version Control System),它功能強大,不僅能備份你的文件,還可以實現很多:
記錄文件的所有歷史變化
錯誤恢復到某個歷史版本
多人協作開發編輯同一個文件
實現功能差異版本(分支),如:mysql、mariadb、percona三個分支
名稱 | 模型 | 并發** 模式 ** | ** 歷史 **模式 | 變更** 范圍 ** | ** 網絡協議 ** | ** 原子 **提交性 |
---|---|---|---|---|---|---|
CVS | Client-server | Merge | Changeset | File | Pserver,ssh | No |
SVN | Client-server | 3-way merge, recursive merge, octopus merge | Changeset and Snapshot | Tree | custom (svn), custom (svn) over ssh, HTTP and SSL (usingWebDAV) | Yes |
Git | Distributed | Merge or lock | Snapshot | Tree | custom, custom over ssh, rsync, HTTP/HTTPS, email, bundles | Yes |
簡而言之,各有優缺點,git要配合github遠程倉庫,可以避免分布式損壞。顯然最大的不同在于git是分布式的。svn有權限控制,避免全被clone克隆走。git適合純代碼,svn適合綜合性文檔管理,git+svn結合起來,完美。
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 快,大部分提交都是對本地倉庫而言的,不依賴網絡,最后一次會推送的到遠程倉庫。
遠程倉庫:可以看做是github,它是一個遠程倉庫,它提供web服務供大家方便下載、查看、提交、存儲。
克隆倉庫(第一次時) clone 克隆
對工作目錄中文件新增、修改、刪除操作
暫存文件,將文件的快照放入暫存區 add 新增
把暫存區的內容提交到本地倉庫 commit 提交
把本地倉庫的內容提交到遠程倉庫 push 推送
從遠程倉庫下載最新內容 pull 拉取
每個人必須有自己的賬號,先官網注冊賬號:
https://gitee.com/
Git-2.27.0-64-bit,一路next,安裝完桌面右鍵菜單有下面兩項,安裝完成。選擇Git Bash,進入git客戶端。
Windows開始菜單:
創建測試文件, 并在本地倉庫執行以下命令:
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 add . #添加當前目錄下文件 $ git commit -m "j2ee part" #提交,設置備注 $ git push -u origin master #推送到遠程倉庫
把遠程倉庫中的內容下載到本地:
$ git pull #從服務器拉取最新內容
任何路徑下輸入都可以:
git config --system --unset credential.helper
然后提交操作時,會出現詢問框,重新輸入用戶名提示
這是是因為readme.md 沒有存在在本地git中
git pull --rebase origin master #
$ git push -u origin master #推送到遠程倉庫
–rebase用在合并代碼的時候其作用就是在一個隨機創建的分支上處理沖突,避免了直接污染原來的分區。
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"]那一行刪掉就好了!
--執行命令解決: git config --global http.sslVerify false --重新push: git push -u origin master
需要在碼云上,把郵箱改成公開的才行
在網頁中創建倉庫名稱:cgb2109-3
進入workspace,再進入你的項目目錄,直接執行clone命令:
git clone https://gitee.com/cgblpx/cgb2109-3.git 也許: 需用執行其他的賬號密碼等命令
感謝各位的閱讀!關于“Git中常見的操作有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。