GIT基礎02 多機器協作等命令

前言?

首先我們知道git給我們提供了分支管理的功能

我們一般使用master分支作為線上環境,master分支一般是一個穩定的分支

我們通常是會創建一個其他分支進行開發,這樣不會影響線上的機器運行

如果沒有git提供這樣的分支功能,就無法做到這一套了

指令學習

假設軟件出現問題咋辦?

我們難道直接在master分支上進行修復嘛

這樣是不對的

我們通常會在master分支上開一個解決問題的分支

然后讓解決問題的分支合并master分支,再讓master分支合并解決問題的分支

最終刪除解決問題的分支即可

那我們如果不想在master分支上看到其他的分支的修改咋辦?

只需切到其他的分支

然后將工作區進行保存即可

這里使用

git stash

注:這里只能將git管理的文件進行儲存

修復bug分支的合并

git merge --no-ff -m "message"git pop stash //將存儲區的放出來

這里的--no-ff的解釋

強制刪除分支

git branch -D 分支名
這里如果使用 -d 就得先合并再刪除
場景就是假設領導讓你開發了一段時間又把這個功能砍掉了

名稱解釋

PR:(pull request)提交代碼審核表 給領導技術人員等進行審核

issues:一般是發現bug提交使用的 測試人員發現這類bug可以指定開發人員進行解決

克隆倉庫

git clone 網址

注意不能在本身就是遠程倉庫的本地倉庫中執行

遠程倉庫的默認名稱是origin

查看遠程倉庫

git remote -v

這里還有一個ssh的方式是通過公鑰和私鑰進行加密的

所以對應的本地倉庫也得有這兩個文件

推送

如果已經將分支進行綁定
直接使用
git push 即可
不然使用
git push origin master:master

拉取操作

git pull origin master:master

忽略操作

增加一個.gitignore文件即可
里面只要包含類似于
*.so文件即可忽略
某個文件不想忽略即可使用
!x.so來防止忽略

別名設置

git config --global alias.st ststus
這里就可以使用st代替status了

標簽管理

tag -> 對某次commitId的一次標識 
比如v1.0
可以對版本進行回退git tag v1.0
git tag -a v0.9 -m "描述 " commitId  查看某個標簽的描述
git show v0.8刪除標簽
git tag -d v1.0推送標簽
git push origin v1.0一次性推送標簽git push origin --tags更新遠端
git push origin :v1.0

實戰場景

查看分支和遠程的連接關系
git branch -r本地和遠程都查看
git branch -a希望追蹤遠程關系
git checkout -b dev origin/dev 
創建時和遠程分支鏈接查看遠程分支之間的連接關系
git branch -vv后來建立連接 git branch --set-upstream-to=origin/dev dev

假設現在兩個人開發同一個文件

a? ?給file文件加了一個aaa

b? ?給file文件加了一個bbb

存在先后關系的話

開發提交之前得先在本地進行沖突解決

然后提交PR給對應領導查看

注意還是先用dev merge master

再用master merge dev 最后提交

我們發現這種使用一個分支的開發方式太麻煩了

所以我們也可以讓一個資源私有一個分支

本地創建分支推送給遠程和用遠程直接創建都是可以的

這里推薦使用遠程創建

因為這樣能保證本地分支是最新的

使用 git push origin feature-1 
這里就可以在遠端新增一個遠程分支成功了

假設這里b生病了

a得在他的項目繼續開發

開發完還是使用老樣子進行merge

最后介紹一下git -flow模型

這里主要是由五個分支來組合

master分支 主分支 對應生產環境

feature分支? 對應開發環境

develop分支? 一般是featrue分支合并上去的 是用來開發測試使用

release分支? 測試使用的分支 一般是測試環境? 也是基于develop分支

hotfix分支? 緊急需要修復的分支? 一般是master分支作為基礎創建的

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/12977.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/12977.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/12977.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

LBSS138LT1G 絲印J1 SOT-23 N溝道 50V/200mA 貼片MOSFET

LBSS138LT1G的應用領域廣泛,主要因為它是一種N溝道金屬氧化物半導體場效應晶體管(MOSFET),具有低電荷、快速開關速度和高阻斷特性。以下是一些典型的應用領域: 1. 消費電子產品:LBSS138LT1G常用于電視、音響…

debian apt 更改阿里源

1. 備份文件 cp /etc/apt/sources.list /etc/apt/sources.list.bak 2. 更改 sources.list文件內容為: deb http://mirrors.aliyun.com/debian/ buster main non-free contrib deb-src http://mirrors.aliyun.com/debian/ buster main non-free contrib deb htt…

QT狀態機1-三態循環狀態機

#include "MainWindow.h" #include "ui_MainWindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)

【C -> Cpp】由C邁向Cpp (6):靜態、友元和內部類

標題:【C -> Cpp】由C邁向Cpp (6):靜態、友元和內部類 水墨不寫bug (圖片來源于網絡) 目錄 (一)靜態成員 (二)友元 (三&#xff09…

生產性服務業與生活性服務業如何區分

服務業的興旺發達是現代經濟的顯著特征,是經濟社會發展的必然趨勢,是衡量經濟發展現代化、國際化、高端化的重要標志。生產性服務業和生活性服務業是服務業的重要組成部分,是當前中國經濟最具活力的產業,也是未來經濟發展最具潛力…

2024OD機試卷-解密犯罪時間 (java\python\c++)

題目:解密犯罪時間 題目描述 警察在偵破一個案件時,得到了線人給出的可能犯罪時間,形如 “HH:MM” 表示的時刻。 根據警察和線人的約定,為了隱蔽,該時間是修改過的,解密規則為:利用當前出現過的數字,構造下一個距離 當前時間 最近的時刻,則該時間為可能的犯罪時間。…

為pytorch前向和反向的Tensor生成描述性統計

為pytorch前向和反向的Tensor生成描述性統計 代碼 在調試Megatron-DeepSpeed的精度時,我們希望對比每一層前向和反向傳播的輸入輸出誤差。然而,由于數據量過大,直接保存所有數據不太現實。因此,我們生成了輸入輸出tensor的描述性統…

有哪些好用的3dMax大神插件?

有哪些好用的3dMax大神插件? Mesh Insert 3DMAX網格插入插件Mesh Insert,在選擇的面上安門窗、打螺絲、挖洞、插入眼耳口鼻及其它網格模型等可以分分鐘搞定!它通過將面選擇替換為庫中的資源來加快建模過程。非常適合硬網格和有機建模&#xf…

Go 一個類型轉換工具包strconv包

Go 語言的 strconv 包提供了用于基本數據類型之間轉換的函數,包括字符串到其他基本類型的轉換,以及其他基本類型到字符串的轉換。 字符串轉換為基本數據類型 strconv.Atoi:將字符串轉換為 intstrconv.ParseBool:將字符串轉換為 b…

iOS ------ 多線程基礎

一,進程和線程 1,進程 定義: 進程是指在系統中正在運行的一個應用程序每個進程之間是獨立的,每個進程均運行在其專有的且受保護的內存進程是系統進行資源分配和調度的一個獨立單位 補充:iOS系統是相對封閉的系統&a…

SQL中的LAG函數與LEAD函數用法

LAG:函數用于獲取結果集中當前行之前的某一行的值 LAG (scalar_expression [,offset] [,default]) OVER ([partition_by_clause ] order_by_clause ) -----漢字解釋 LAG (字段 [,偏移量默認為1] [,如果沒有值時候默認值]) OVER ( [ partition_by 字段 ] order_by 字…

服務網格 SolarMesh v1.13 重磅發布

SolarMesh是行云創新推出的流量治理平臺,它基于Istio,為部署在K8s集群上的應用提供全面的流量治理能力。 在之前的版本中,SolarMesh提供的能力有:流量視圖,流量控制策略批量配置,API級別的流量數據采集和展…

【上海大學計算機組成原理實驗報告】五、機器語言程序實驗

一、實驗目的 理解計算機執行程序的實際過程。 學習編制機器語言簡單程序的方法。 二、實驗原理 根據實驗指導書的相關內容,指令的形式化表示是指采用一種規范化的符號系統,以更清晰、精確地描述和表示指令的邏輯功能和操作步驟。 匯編是一種編程語言…

MM模塊學習二 (供應商,物料后臺相關配置)

公司代碼配置 新建條目(只是建了一個名字出來,后面很多表都是沒有得) 接下來定義公司代碼: 公司代碼復制完成(后續修改交給財務顧問去做) 復制工廠: 復制工廠完成: 修改復制過去的工…

Linux服務器lvm磁盤管理fdisk和df磁盤大小不同修改

服務器端由于硬盤是通過VCenter原來100G磁盤復制的虛擬機,復制完成后,原來100G的磁盤通過選擇 磁盤重新復制出150G的磁盤,開機后發現還是原來的100G的磁盤,通過fdisk -l 查看有個sdb是150G, 但是已經劃轉的lvm盤只有100G, 通過df查看也是原來的100G: pvs查看pv里也是10…

用c++實現快速排序、最大子段和問題

6.2.2 快速排序 【問題】快速排序(quick sort)的分治策略如下(圖6-5)。 (1)劃分:(選定一個記錄作為軸值,以軸值為基準將整個序列劃分為兩個子序列,軸值的位置在劃分的過程中確定,并且左側子序列的所有記錄…

26 分鐘驚訝世界,GPT-4o 引領未來人機交互

前言 原文鏈接:OpenAI最新模型——GPT-4o,實時語音視頻交互,未來人機交互近在眼前 - Kaiho小站 北京時間 5 月 14 日凌晨,OpenAI 發布新一代模型——GPT-4o,僅在 ChatGPT 面世 17 個月后,OpenAI 再次通過…

qt的udp通訊

QString mylocalip; const QList interfaces QNetworkInterface::allInterfaces(); foreach(QNetworkInterface ip, interfaces) { if (ip.humanReadableName() QStringLiteral(“以太網”)) { //if (ip.type() QNetworkInterface::Ethernet) { const QList iplist ip.addr…

【EasyX】快速入門——靜態圖形篇

1.基本說明 EasyX 是針對 C 的圖形庫,可以幫助 C/C 初學者快速上手圖形和游戲編程。 比如,可以基于 EasyX 圖形庫很快的用幾何圖形畫一個房子,或者一輛移動的小車,可以編寫俄羅斯方塊、貪吃蛇、黑白棋等小游戲,可以練…

Go 注釋生成 api文檔

在 Go 語言中,通常會使用 godoc 工具來從注釋中生成 API 文檔。godoc 是 Go 官方提供的文檔生成工具,它可以解析 Go 源代碼中的注釋,并生成在線的、可交互的文檔。 為了使用 godoc 生成 API 文檔,你需要遵循一些特定的注釋格式。…