編輯器&Mac
1、編輯器的使用vs code
插件
git輔助工具,可查看代碼的書寫者:Git Blame
2、 Mac工具使用
強大終端 item2
3、在 macOS 中完美配置文件名大小寫敏感(解決git默認對大小寫不敏感問題)解決git大小寫不敏感
知識篇 一、git使用一般企業(yè)中使用代碼管理工具Git開發(fā)時都是通過拉分支進行功能細致開發(fā),所以掌握git的分支操作時必要的
使用Git下載指定分支命令為:git clone -b 分支名倉庫地址
初始開發(fā)git操作流程
本地創(chuàng)建公鑰ssh-keygen -t rsa -C "郵箱"并配置
克隆最新主分支項目代碼git clone 地址
創(chuàng)建本地分支git branch 分支名
查看本地分支git branch
查看遠程分支git branch -a
切換分支git checkout 分支名(一般修改未提交則無法切換,大小寫問題經(jīng)常會有,可強制切換git checkout 分支名 -f非必須慎用)
將本地分支推送到遠程分支git push <遠程倉庫> <本地分支>:<遠程分支>
概念:
Remote:遠程主倉庫;
Repository:本地倉庫;
Index:Git追蹤樹,暫存區(qū);
workspace:本地工作區(qū)(即你編輯器的代碼)
一般操作流程:《工作區(qū)》-> git status查看狀態(tài) -> git add .將所有修改加入暫存區(qū)-> git commit -m "提交描述"將代碼提交到本地倉庫->git push將本地倉庫代碼更新到遠程倉庫
為遠程倉庫指定別名,以便于管理遠程主機,默認只有一個時為origin
查看主機名:git remote
查看主機名即網(wǎng)址:git remote -v
默認克隆遠程倉庫到本地時,遠程主機為origin,如需指定別名可使用git clone -o <別名> <遠程git地址>
查看主機的詳細信息git remote show <主機名>
添加遠程主機git remote add <主機名> <網(wǎng)址>
刪除遠程主機git remote rm <主機名>
修改遠程主機的別名:git remote rename <原主機名> <新主機名>
將某個遠程主機的更新,全部/分支 取回本地(此時之更新了Repository)它取回的代碼對你本地的開發(fā)代碼沒有影響,如需徹底更新需合并或使用git pull
遠程主機的更新,全部取回本地git fetch <遠程主機名>;
將遠程倉庫特定分支更新到本地git fetch <遠程主機名> <分支名>
如果需要將更新拉取但本地工作代碼需要合并到本地某一分支git merge <被合并的遠程分支>或者在此基礎(chǔ)上創(chuàng)建出新分支并切換git checkout -b <分支名> <在此分支上創(chuàng)建>
拉取遠程主機某分支的更新,再與本地的指定分支合并(相當(dāng)與fetch加上了合并分支功能的操作)
拉取遠程某分支并與本地某一分支合并(沒有則默認會創(chuàng)建):git pull <遠程主機名> <遠程分支名>:<本地分支名>
如果遠程分支是與當(dāng)前所在分支合并,則冒號后面的部分可以省略:git pull <遠程主機名> <遠程分支名>
如果當(dāng)前分支與遠程分支存在追蹤關(guān)系,則可以省略遠程分支名:git pull <遠程主機名>
如果當(dāng)前分支只有一個追蹤分支,則遠程主機名都可以省略:git pull
三、git push將本地分支的更新,推送到遠程主機,其命令格式與git pull相似
將本地分支推送到遠程分支:git push <遠程主機名> <本地分支名>:<遠程分支名>
如果省略遠程分支名,則默認為將本地分支推送到與之關(guān)聯(lián)的遠程分支:(一般設(shè)置本地分支和與之關(guān)聯(lián)的遠程分支同名,防止混淆)git push <遠程主機名> <本地分支名>
如果對應(yīng)的遠程分支不存在,則會被創(chuàng)建(m默認與本地分支同名)
如果省略本地分支名,則表示刪除指定的遠程分支,這等同于推送一個空的本地分支到對應(yīng)遠程分支:git push origin :<遠程分支> 等同于 git push origin --delete <遠程分支>
如果當(dāng)前分支與遠程分支之間存在追蹤關(guān)系,則本地分支和遠程分支都可以省略git push origin
如果當(dāng)前分支只有一個追蹤分支,那么主機名也可以省略:git push
如果當(dāng)前分支與多個主機存在追蹤關(guān)系(使用場景相對來說較少),可以使用-u指定默認推送主機git push -u origin <主機名>設(shè)置時候需推送便可以直接使用git push
將本地的所有分支都推送到遠程主機:git push --all origin
如果遠程主機的版本比本地版本更新,推送時Git會報錯,要求先在本地做git pull合并差異,然后再推送到遠程主機。如果一定要推送,可以使用--force選項(謹慎使用,除非你非常確認):git push --force origin
注意:分支推送順序的格式為<來源地>:<目的地>,所以git pull格式:<遠程分支>:<本地分支>,git push格式為:<本地分支>:<遠程分支>。
創(chuàng)建本地分支:git branch test:(創(chuàng)建名為test的本地分支)
切換分支:git checkout test:(切換到test分支)
創(chuàng)建并切換分支git checkout -b test:(相當(dāng)于以上兩條命令的合并)
查看本地分支:git branch
查看遠程倉庫所有分支:git branch -a
刪除本地分支:git branch -d test:(刪除本地test分支)
分支合并:git merge master:(將master分支合并到當(dāng)前分支)
本地分支重命名:git branch -m oldName newName
遠程分支重命名:
重命名遠程分支對應(yīng)的本地分支:git branch -m oldName newName;
刪除遠程分支:git push --delete origin oldName;
上傳新命名的本地分支:git push origin newName;
把修改后的本地分支與遠程分支關(guān)聯(lián):git branch --set-upstream-to origin/newName
分支關(guān)聯(lián):
查看當(dāng)前的本地分支與遠程分支的關(guān)聯(lián)關(guān)系:git branch -vv
把當(dāng)前本地分支與遠程origin的某分支進行關(guān)聯(lián)處理(通過 --set-upstream-to 命令):git branch --set-upstream-to=origin/feature/clear-server-eslint-error_180713
分支差異查看
查看本地當(dāng)前分支與遠程某一分支的差異:git diff origin/feature/reserve-3.4
查看本地特定分支與遠程分支的差異:git diff master origin/feature/reserve-3.4 (查看本地master分支與遠程feature/reserve-3.4分支的差異,如圖)
git checkout -- <文件名>:丟棄工作區(qū)的修改,就是讓這個文件回到最近一次git commit或git add時的狀態(tài)。
git reset HEAD <文件名>:把暫存區(qū)的修改撤銷掉(unstage),重新放回工作區(qū)。
git reset --hard commit_id:git版本回退,回退到特定的commit_id版本
流程:
git log查看提交歷史,以便確定要回退到哪個版本(commit 之后的即為ID);
git reset --hard commit_id:回退到commit_id版本;
git reflog查看命令歷史,以便確定要回到未來的哪個版本;
更新遠程代碼到本地
git fetch origin master(分支)
git pull // 將fetch下來的代碼pull到本地
git diff master origin/master // 查看本地分支代碼和遠程倉庫的差異
拉取遠程分支并創(chuàng)建本地分支
git checkout -b 本地分支名 origin/遠程分支名:使用此方式會在本地新建分支,并自動切換到該本地分支;
git fetch origin 遠程分支名:本地分支名:使用此方式會在本地新建分支,但是不會自動切換到該本地分支,需要手動checkout。
六、配置git config -l // 陳列出所有的git配置項
git config core.ignorecase false //配置git不忽略大小寫(默認忽略)參照(git 大小寫)
git stash 可用來暫存當(dāng)前正在進行的工作,比如想pull 最新代碼又不想commit, 或者另為了修改一個緊急的bug,先stash,使返回到自己上一個commit, 改完bug之后再stash pop, 繼續(xù)原來的工作;
添加緩存棧:git stash;
查看緩存棧:git stash list;
推出緩存棧:git stash pop;
取出特定緩存內(nèi)容:git stash apply stash@{1};
“積跬步、行千里”—— 持續(xù)更新中~,喜歡留下個贊哦!
往期經(jīng)典好文:
JavaScript經(jīng)典面試題匯總
我的前端面試日記
相關(guān)好文推薦:
http報文詳解
我的博客即將搬運同步至騰訊云+社區(qū),邀請大家一同入駐:https://cloud.tencent.com/dev...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/52648.html
編輯器&Mac 1、編輯器的使用vs code 插件 git輔助工具,可查看代碼的書寫者:Git Blame 2、 Mac工具使用 強大終端 item2 3、在 macOS 中完美配置文件名大小寫敏感(解決git默認對大小寫不敏感問題)解決git大小寫不敏感 知識篇 一、git使用 一般企業(yè)中使用代碼管理工具Git開發(fā)時都是通過拉分支進行功能細致開發(fā),所以掌握git的分支操作時必要的 使用...
摘要:本文以常見的互聯(lián)網(wǎng)公司敏捷開發(fā)方式為例簡要說明一個需求迭代過程中所需的各種能力階段一方案設(shè)計開發(fā)需求文檔的理解抓住重點主要關(guān)注數(shù)據(jù)的流向從哪里來到哪里去現(xiàn)有工程代碼梳理快速定位代碼所在數(shù)據(jù)流向頁面接口開發(fā)者工具抓包工具協(xié)議的 本文以常見的互聯(lián)網(wǎng)公司敏捷開發(fā)方式為例, 簡要說明一個需求迭代過程中所需的各種能力. 階段一: 方案設(shè)計 開發(fā)需求文檔的理解(抓住重點, 主要關(guān)注數(shù)據(jù)的流向, ...
摘要:借著產(chǎn)品層面的功能和視覺升級,我們用對它進行了一次技術(shù)重構(gòu)。前端優(yōu)化是一個讓人技術(shù)提升的,希望你也能從這里學(xué)到一些東西。年最流行的前端鏈接我們每周會給多名前端開發(fā)者發(fā)送新聞郵件。 面試 -- 網(wǎng)絡(luò) HTTP 現(xiàn)在面試門檻越來越高,很多開發(fā)者對于網(wǎng)絡(luò)知識這塊了解的不是很多,遇到這些面試題會手足無措。本篇文章知識主要集中在 HTTP 這塊。文中知識來自 《圖解 HTTP》與維基百科,若有錯...
閱讀 2818·2023-04-25 22:51
閱讀 2057·2021-10-11 10:58
閱讀 3316·2019-08-30 10:49
閱讀 1877·2019-08-29 17:09
閱讀 3141·2019-08-29 10:55
閱讀 847·2019-08-26 10:34
閱讀 3492·2019-08-23 17:54
閱讀 985·2019-08-23 16:06