Git提交代碼詳細(xì)流程及問題總結(jié)
1.git 三大分區(qū)
- 工作區(qū):開發(fā)人員當(dāng)前正在開發(fā)的項(xiàng)目工作空間,是我們?nèi)庋劭梢姷摹?nbsp;Git系統(tǒng)不會管工作區(qū)中任何文件內(nèi)容的修改,僅監(jiān)控暫存區(qū)。
- 暫存區(qū):Git系統(tǒng)內(nèi)部,管理開發(fā)人員項(xiàng)目中臨時修改文件的區(qū)域,用于臨時存放文件的改動,它會存放上一次開發(fā)人員 git add 添加之后的數(shù)據(jù)。 在后續(xù)繼續(xù)向版本庫提交更新代碼時,git會比較暫存區(qū)與工作區(qū)間的差異,給予相關(guān)操作提示。
- 版本庫:類似倉庫,存儲很多配置信息、日志信息、以及文件各種修改后的最終版本信息。
2.Git提交、推送、拉取代碼、合并分支詳細(xì)流程
- 查看工作區(qū)文件狀態(tài)
git status
- 添加文件到暫存區(qū)
git add <文件名> git add ./* #添加所有文件到暫存區(qū)
- 將暫存區(qū)的文件添加到版本庫
git commit -m '提交注釋信息'
- 推送本地分支的更新到遠(yuǎn)程主機(jī)
git push
- 切換分支
git checkout <遠(yuǎn)程分支名>
- 合并分支
git merge <源分支名>
- 保存當(dāng)前工作進(jìn)度
使用情況:分支有改變時不提交不能進(jìn)行切換分支操作
該命令會保存當(dāng)前工作進(jìn)度,會把暫存區(qū)和工作區(qū)的改動保存到一個未完結(jié)變更的堆棧中。
git stash
- 遠(yuǎn)端拉取代碼
git pull #是 git pull --merge 的縮寫;將遠(yuǎn)程庫的最新內(nèi)容拉到本地,用戶檢查后決定是否合并 git pull --rebase #遠(yuǎn)程主機(jī)的最新內(nèi)容拉取到本地后直接合并;可能會產(chǎn)生沖突需要手動解決
推送本地分支的更新到遠(yuǎn)程主機(jī)
此時可以在主分支查詢到從自己分支合并過來的提交記錄
切換回自己分支
恢復(fù)最新的進(jìn)度到工作區(qū)
git stash pop
3.問題總結(jié)
問題一、誤提交:提交代碼時遇到?jīng)_突,但沖突文件并不想提交【一般可以通過將文件添加到.gitignore長久解決,但是由于我的文件具有線上版本,.gitignore文件不起作用】
解決辦法:
git add . git reset HEAD .
- 【git add .】:添加所有文件到暫存區(qū)
- 【git reset HEAD .】:將此次修改的所有文件退回到工作區(qū)
4.git push補(bǔ)充知識
- 將本地分支的更新推送到遠(yuǎn)程主機(jī)
git push <遠(yuǎn)程主機(jī)名> <本地分支名>:<遠(yuǎn)程分支名> # :前后不可以有空格 git push origin dev-lwq:master #將本地的dev-lwq分支推送到origin主機(jī)的master分支
- 省略遠(yuǎn)程分支名:
(1)本地與遠(yuǎn)程存在分支名重復(fù)情況,此時可以省略(2)若遠(yuǎn)程分支不存在,若省略則會新建一個與本地分支同名的遠(yuǎn)程分支
git push <遠(yuǎn)程主機(jī)名> <本地分支名> git push origin dev-lwq #將本地的dev-lwq分支推送到origin主機(jī)的dev-lwq分支,若origin主機(jī)不存在dev-lwq分支則會新建
- 省略本地分支名:刪除指定的遠(yuǎn)程分支
git push <遠(yuǎn)程主機(jī)名> :<遠(yuǎn)程分支名> git push origin :master #刪除origin主機(jī)的master分支 git push origin --delete master#等同于上面命令
- 僅保留遠(yuǎn)程主機(jī)名:當(dāng)前分支與遠(yuǎn)程分支存在追蹤關(guān)系
git push <遠(yuǎn)程主機(jī)名> git push origin #將當(dāng)前分支推動到origin主機(jī)的對應(yīng)分支 git push #省略遠(yuǎn)程主機(jī)名:當(dāng)前分支只有一個追蹤分支
- 當(dāng)前分支與多個主機(jī)存在追蹤關(guān)系,通過以下命令可以指定一個默認(rèn)主機(jī)
git push -u <遠(yuǎn)程主機(jī)名> <本地分支名> git push -u origin master #master分支推送到origin主機(jī)且設(shè)置origin為默認(rèn)主機(jī)
總結(jié)
到此這篇關(guān)于Git提交代碼詳細(xì)流程及問題總結(jié)的文章就介紹到這了,更多相關(guān)Git提交代碼流程內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
idea項(xiàng)目全部類都爆紅但能正常啟動問題的解決辦法
這篇文章主要介紹了idea項(xiàng)目全部類都爆紅但能正常啟動問題的解決辦法,當(dāng)IDEA項(xiàng)目突然全部爆紅,主啟動類無法識別時,可嘗試文中的兩種方法修復(fù),需要的朋友可以參考下2024-10-10一文詳解VSCode安裝配置使用(最新版超詳細(xì)保姆級含插件)
安裝VScode就很簡單了,一路NEXT就可以了,重點(diǎn)是配置使用以及插件推薦,這篇文章主要給大家介紹了關(guān)于VSCode安裝配置使用的相關(guān)資料,本文是最新版超詳細(xì)保姆級含插件,需要的朋友可以參考下2023-05-05git克隆遠(yuǎn)程倉庫的指定分支方法(附常用git配置命令)
這篇文章主要介紹了git克隆遠(yuǎn)程倉庫的指定分支方法(附常用git配置命令),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07