Git本地庫操作

對本地庫的操作很少,我們學習1~6節即可,其他了解下。我們可以在idea中完成對本地庫還有遠程庫的操作,可視化界面用起來更加舒適而且也不會混淆。

1. Git概述

  • Git 是一個免費的、開源的分布式版本控制系統,可以快速高效地處理從小型到大型的各種項目。

  • Git 易于學習,占地面積小,性能極快。 它具有廉價的本地庫,方便的暫存區域和多個工作流分支等特性。其性能優于 Subversion、CVS、Perforce 和 ClearCase 等版本控制工具。

  • 本地庫已經實現了版本管理,可以切換分支到任意版本下,如果我們是個人開發者,并且不需要與其他人合作開發,那么在本地庫進行版本管理可能已經足夠了。但要注意本地庫無法備份代碼,也不能與其他開發者分享代碼。如果你需要和其他人協同工作或者希望備份你的代碼,那么最好將代碼提交到遠程倉庫中進行版本管理。這樣可以確保對代碼進行備份并方便代碼共享和合作開發。

2. 何為版本控制

版本控制是一種記錄文件內容變化,以便將來查閱特定版本修訂情況的系統。

版本控制其實最重要的是可以記錄文件修改歷史記錄,從而讓用戶能夠查看歷史版本,方便版本切換。我們就像甲方一樣,如果改了七版后還想要回第一版,我們就可以使用Git快速方便地切換回第一版。
雖然我們也可以直接通過備份的方式保存各個版本,但是這種方式不僅占用我們的存儲空間,當文件較大時還會占用我們的時間。而且各個版本備份只是Git的一個作用,在遠程倉庫中還可以通過高亮比較各個版本代碼的不同。跟他人分享我們的代碼、代碼備份、與他人協助開發。

3. Git和代碼托管中心

代碼托管中心是基于網絡服務器的遠程代碼倉庫,一般我們簡單稱為遠程庫。

? 局域網

? GitLab

? 互聯網

? GitHub(外網)

? Gitee 碼云(國內網站)

4. Git安裝

我安裝在D:\ProgramSofts,安裝好后右鍵任意位置,在右鍵菜單里選擇 Git Bash Here 即可打開 Git Bash 命令行終端。

在這里插入圖片描述

在 Git Bash 終端里輸入 git --version 查看 git 版本,如圖所示,說明 Git 安裝成功。

5. Git常用命令

命令名稱作用
git config --global user.name 用戶名設置用戶簽名
git config --global user.email 郵箱設置用戶簽名
git init初始化本地庫
git status查看本地庫狀態
git add 文件名添加到暫存區
git commit -m “日志信息” 文件名提交到本地庫
git reflog查看歷史記錄
git reset --hard 版本號版本穿梭

6. 設置用戶簽名

任意位置右鍵git Bash然后用以下命令設置用戶前面:

git config --global user.name zane (回車)
git config --global user.email 2116514824@qq.com

在家目錄下我們可以看到新創建了一個文件.gitconfig
在這里插入圖片描述

雙擊打開查看文件內容或通過git Bash方式獲取文件內容
在這里插入圖片描述

簽名的作用是區分不同操作者身份。用戶的簽名信息在每一個版本的提交信息中能夠看到,以此確認本次提交是誰做的。Git 首次安裝必須設置一下用戶簽名,否則無法提交代碼。

注意: 這里設置用戶簽名和將來登錄 GitHub(或其他代碼托管中心)的賬號沒有任何關系。

7. 初始化本地庫

D:\Git-Space創建一個文件夾git-demo1,然后在文件夾下右鍵git Bash,輸入以下命令:

基本語法

git init

案例實操

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1
$ git init
Initialized empty Git repository in D:/Git-Space/git-demo1/.git/ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ ll -a
total 4
drwxr-xr-x 1 ASUS 197121 0 Jul  5 20:22 ./
drwxr-xr-x 1 ASUS 197121 0 Jul  5 20:22 ../
drwxr-xr-x 1 ASUS 197121 0 Jul  5 20:22 .git/ (.git 初始化的效果,生成 git)

結果查看

初始化后在本地庫(我們剛剛所新建的文件夾)下有一個.git文件夾
在這里插入圖片描述

8. 查看本地庫狀態

基本語法

git status

案例實操

首次查看(工作區沒有任何文件)

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git status
On branch masterNo commits yetnothing to commit (create/copy files and use "git add" to track)

新增文件(hello.txt)

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ vim hello.txt  //編輯文件,若沒有則新建一個,輸入后進入編輯區,點擊i進入插入狀態,輸入以下內容:hello git!hello lzk! 按esc退出插入模式后,按下yy表示對光標所在行進行復制,p表示粘貼,編輯完畢,按下:wq表示保存文件
--------------------
hello git!hello lzk!
hello git!hello lzk!

再次查看(檢測到未追蹤的文件)

  • 未追蹤文件表示該文件尚未被添加到暫存區
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git status 
On branch masterNo commits yetUntracked files:(use "git add <file>..." to include in what will be committed)hello.txtnothing added to commit but untracked files present (use "git add" to track)

9. 添加暫存區

將工作區的文件添加到暫存區

基本語法

git add 文件名

案例實操

  • 執行命令后并未提示該文件是否加入到暫存區中,所以我們需要查看一下狀態,可以忽略警告。
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git add hello.txt  
warning: LF will be replaced by CRLF in hello.txt.
The file will have its original line endings in your working directory-------------------
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git status
On branch masterNo commits yetChanges to be committed:(use "git rm --cached <file>..." to unstage)new file:   hello.txt  (檢測到暫存區有新文件)

10. 提交本地庫

將暫存區的文件提交到本地庫

基本語法

git commit -m "日志信息" 文件名

案例實操

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git commit -m "my first commit" hello.txt
warning: LF will be replaced by CRLF in hello.txt.
The file will have its original line endings in your working directory
[master (root-commit) 661f746] my first commit1 file changed, 16 insertions(+)create mode 100644 hello.txt再次查看狀態(沒有文件需要提交)
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git status
On branch master
nothing to commit, working tree clean

11. 修改文件

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ vim hello.txt (修改文件,因為我們在本地庫下執行編輯文件命令,一個本地庫為一個文件夾,文件夾下沒有同名同后綴的文件,所以修改hello.txt就是修改指定的那個)-----修改為以下內容--------
hello git! hello lzk!
22222222222222222222

查看狀態

檢測到工作區有文件被修改

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git status
On branch master
Changes not staged for commit:(use "git add <file>..." to update what will be committed)(use "git restore <file>..." to discard changes in working directory)modified:   hello.txtno changes added to commit (use "git add" and/or "git commit -a") //此處命令提示我們可以使用git add方式將工作區中的文件添加到暫存區或者使用git commit -a方式提交
--------------------
不add直接commit
兩種情況:
- 新建的文件尚未納入版本控制體系:必須先add納入版本控制體系后才可以commit
- 已納入版本控制體系的文件被修改:可以不add直接commit,Git自動執行了add

將修改的文件再次添加暫存區

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git add hello.txt
warning: LF will be replaced by CRLF in hello.txt.
The file will have its original line endings in your working directory

暫存區文件提交本地庫

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git commit -m "my second commit" hello.txt
.....

12. 查看歷史版本

基本語法

git reflog 	查看版本信息
git log     查看版本詳細信息

案例實操

  • 新增一次,提交到本地庫,為版本1,修改后提交到本地庫,為版本2。此時指針HEAD總是指向最后一次修改。本地庫只有一份文件,但是git能存在兩個版本信息,很神奇。
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git reflog
5c02310 (HEAD -> master) HEAD@{0}: commit: my second commit
661f746 HEAD@{1}: commit (initial): my first commit

13. 版本穿梭

基本語法

git reset --hard 版本號

案例實操

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
--首先查看當前的歷史記錄,可以看到當前是在 5c02310 這個版本
$ git reflog
5c02310 (HEAD -> master) HEAD@{0}: commit: my second commit
661f746 HEAD@{1}: commit (initial): my first commitASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
--切換到 661f746 版本,也就是我們第一次提交的版本
$ git reset --hard 661f746
HEAD is now at 661f746 my first commitASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
--切換完畢之后再查看歷史記錄,當前成功切換到了 661f746 版本
$ git reflog
661f746 (HEAD -> master) HEAD@{0}: reset: moving to 661f746
5c02310 HEAD@{1}: commit: my second commit
661f746 (HEAD -> master) HEAD@{2}: commit (initial): my first commit

14. Git分支操作

什么是分支

在版本控制過程中,同時推進多個任務,為每個任務,我們就可以創建每個任務的單獨分支。使用分支意味著程序員可以把自己的工作從開發主線上分離開來,開發自己分支的時候,不會影響主線分支的運行。對于初學者而言,分支可以簡單理解為副本,一個分支就是一個單獨的副本。(分支底層其實也是指針的引用)

master為開發主線,其余為分支,分支為主線分支進行功能開發,開發好后將功能合并到master上。

分支的好處

  • 同時并行推進多個功能開發,提高開發效率。

  • 各個分支在開發過程中,如果某一個分支開發失敗,不會對其他分支有任何影響。失敗的分支刪除重新開始即可。

分支的操作命令

命令名稱作用
git branch 分支名創建分支
git branch -v查看分支
git checkout 分支名切換分支
git merge 分支名把指定的分支合并到當前分支上

查看分支

基本語法
git branch -v
案例實操
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git branch -v
* master 661f746 my first commit   (*代表當前所在的分區)

創建分支

基本語法
git branch 分支名
案例實操
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git branch hot-fix  (創建分支hot-fix)ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git branch -vhot-fix 661f746 my first commit (剛創建的新的分支,并將主分支 master
的內容復制了一份給它)
* master  661f746 my first commit  (當前分支仍為master)

修改分支

--在 maste 分支上做修改
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ vim hello.txt
--添加暫存區
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git add hello.txt
--提交本地庫
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git commit -m "my third commit" hello.txt
[master 1eec0ee] my third commit1 file changed, 1 insertion(+), 5 deletions(-)--查看分支
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git branch -vhot-fix 661f746 my first commit (hot-fix 分支并未做任何改變)
* master  1eec0ee my third commit (當前 master 分支已更新為最新一次提交
的版本)
所以修改一個分支上的內容并不會對另一個分支內容產生影響。
--查看分支內容
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ cat hello.txt
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
lzk first commit master!
切換分支
基本語法
git checkout 分支名
案例實操
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git checkout hot-fix
Switched to branch 'hot-fix'
--發現當先分支已由 master 改為 hot-fix
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (hot-fix)
--修改hot-fix分支為以下的內容
$ vim hello.txt
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
lzk second commit hot-fix!
hello git!hello lzk!--添加暫存區
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (hot-fix)
$ git add hello.txt--提交本地庫
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (hot-fix)
$ git commit -m "hot-fix commit" hello.txt
[hot-fix 5219180] hot-fix commit1 file changed, 1 insertion(+), 5 deletions(-)

合并分支

基本語法
git merge 分支名
案例實操

在master分支上合并hot-fix分支

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (hot-fix)
$ git checkout master
Switched to branch 'master'ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)
$ git merge hot-fix
Auto-merging hello.txt
CONFLICT (content): Merge conflict in hello.txt (產生沖突)
Automatic merge failed; fix conflicts and then commit the result.
--沖突產生的表現:后面狀態為 MERGING
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master|MERGING)
沖突產生的原因:

合并分支時,兩個分支在同一個文件的同一個位置有兩套完全不同的修改。Git 無法替我們決定使用哪一個。必須人為決定新代碼內容。

由于master分支上的hello.txt文件(總12行)后兩行與要合并的分支hot-fix的hello.txt文件(總12行)后兩行的內容不同,所以Git不知道誰覆蓋誰,所以合并失敗!

查看狀態

檢測到文件有兩處修改

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master|MERGING)
$ git status
On branch master
You have unmerged paths.(fix conflicts and run "git commit")(use "git merge --abort" to abort the merge)Unmerged paths:(use "git add <file>..." to mark resolution)both modified:   hello.txtno changes added to commit (use "git add" and/or "git commit -a")
解決沖突

編輯有沖突的文件,刪除特殊符號,決定要使用的內容

提示:特殊符號:<<<<<<< HEAD 當前分支的代碼 ======= 合并過來的代碼 >>>>>>> hot-fix

ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master|MERGING)
$ cat hello.txt
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
<<<<<<< HEAD
hello git!hello lzk!
lzk first commit master!
=======
lzk second commit hot-fix!
hello git!hello lzk!
>>>>>>> hot-fixASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master|MERGING)
$ vim hello.txt
按上面的提示進行修改操作--修改完再次查看
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master|MERGING)
$ cat hello.txt
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
hello git!hello lzk!
lzk first commit master!
lzk second commit hot-fix!--添加到暫存區
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master|MERGING)
$ git add hello.txt--執行提交
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master|MERGING)
$ git commit -m "merge hot-fix"
[master 651389c] merge hot-fix--發現后面 MERGING 消失,變為正常
ASUS@LAPTOP-L64DOQDG MINGW64 /d/Git-Space/git-demo1 (master)

實際應用:將項目A同時安排給B,C去完成,每人負責不同的模塊,項目A此時就是主線分支master,而B,C需要在其他分支上進行工作,完成各自模塊后自身分支合并到主線分支上去。

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

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

相關文章

[個人筆記] Windows配置OpenSSH免密連接

Windows - 運維篇 第七章 Windows配置OpenSSH免密連接 Windows - 運維篇系列文章回顧Windows配置OpenSSH免密連接參考來源 系列文章回顧 第一章 遷移WinSrv系統到虛擬機 第二章 本地安全策略xcopy實現實時備份文件夾內容 第三章 利用cmd自帶的icacls命令導出文件的ACL權限 第四…

JavaScript啟動本地應用程序

JavaScript調起本地應用程序 以下內容&#xff0c;自定義部分我也還未經過實際驗證&#xff0c;酌情查看。 文章目錄 JavaScript調起本地應用程序確定協議調用協議傳參自定義寫入協議獲取參數 在瀏覽器中通過 JavaScript調起本地應用程序的一個可行方法就是 通過協議調起。 …

git 文件被莫名其妙的或略且無論如何都查不到哪個.gitignore文件忽略的

先說解決辦法&#xff1a;git check-ignore -v [文件路徑] 這個命令會返回一個忽略規則&#xff0c;以及該規則在哪個文件中定義的&#xff0c;該規則使得指定的文件被忽略。 1.遇到的問題 同項目組&#xff0c;其他同學都可以正常的提交.meta文件&#xff0c;我的提交就出現以…

Oracle通過MyBatis執行批量插入與更新問題

最近看一個老項目&#xff0c;使用的Oracle數據庫&#xff0c;發現要使用MyBatis執行批量操作還是不太一樣。 下面我們來看一下&#xff0c;Oracle數據庫&#xff0c;如何使用MyBatis來批量插入和更新。 批量插入 因為Oracle和MySQL的insert還不太一樣&#xff0c;Oracle不能…

canal本地安裝和使用

1、組件版本 canal.deployer-1.1.7 kafka_2.13-2.6.0 jdk8 apache-zookeeper-3.6.0-bin mysql5.7 2、解壓canal.deployer-1.1.7 2.1、修改canal.properties配置文件 ##改為kafka canal.serverModekafka## 改為instance canal.destinations instance## 改為true&#x…

STM32——獨立看門狗

文章目錄 一、看門狗基礎介紹&#xff08;一&#xff09;看門狗概述&#xff1a;&#xff08;二&#xff09;看門狗的作用&#xff1a;&#xff08;三&#xff09;看門狗的原理&#xff1a;&#xff08;四&#xff09;為什么需要使用看門狗來提高系統的可靠性&#xff1a;&…

Linux 中的 rm 命令及示例

Linux 中的 rm 命令及示例 rm命令是Linux中最常見、最基礎的命令之一。即使您對 Linux 的使用經驗有限&#xff0c;您也很可能聽說過它。該命令的主要目的是刪除文件和目錄。使用此命令刪除文件和目錄無法撤消。 這意味著您應該謹慎使用此命令&#xff0c;因為如果沒有備份&am…

振南技術干貨集:制冷設備大型IoT監測項目研發紀實(5)

注解目錄 1.制冷設備的監測迫在眉睫 1.1 冷食的利潤貢獻 1.2 冷設監測系統的困難 &#xff08;制冷設備對于便利店為何如何重要&#xff1f;了解一下你所不知道的便利店和新零售行業。關 于電力線載波通信的論戰。&#xff09; 2、電路設計 2.1 防護電路 2.1.1 強電防護…

Colmap三維重建詳解與使用方法

圖片捕獲過程&#xff0c;請遵循以下指導方針以獲得最佳重建結果: 1 捕捉具有良好紋理的圖像。避免使用完全沒有質感的圖片(例如&#xff0c;白色的墻或空桌子)。如果場景本身沒有足夠的紋理&#xff0c;你可以放置額外的背景對象&#xff0c;如海報等。 2 在相似的照明條件下…

@Value和@Scheduled注解簡介

&#xff08;1&#xff09;SpringBoot讀取配置文件&#xff0c;使用Value注解獲取數據&#xff0c;中文亂碼問題解決辦法 new String(xxx.getBytes(StandardCharsets.ISO_8859_1), StandardCharsets.UTF_8) &#xff08;2&#xff09;Scheduled注解 例如&#xff0c;Scheduled(…

前端處理返回數據為數組對象且對象嵌套數組并重名的數據,合并名稱并疊加數據

前端處理返回數據為數組對象且對象嵌套數組并重名的數據&#xff0c;合并名稱并疊加數據 var newList[]; var table{}; var dataObj{}; var finalList[]; var tableData[{brName:營業部,dateStr:2023-11-23,tacheArr:[{dealCnt:20,tacheName:奔馳}]},{brName:營業部,dateStr:2…

TypeError: Cannot read property ‘sendpost‘ of undefined

箭頭函數指向問題&#xff0c;定義let that this 解決

大寬帶服務器有什么優勢?

大寬帶服務器有什么優勢&#xff1f; 什么是大帶寬服務器&#xff1f;從屬性上看&#xff0c;大寬帶可以分為G口大帶寬、萬兆大帶寬等&#xff0c;從線路上看&#xff0c;可以分為電信、移動、聯通等&#xff0c;從地域屬性看&#xff0c;可以分為國內寬帶、國際寬帶。大寬帶是…

如何活躍谷歌開發者賬號,增加賬號的權重和真實性,從而延長應用在線時長?

眾所周知&#xff0c;每個谷歌開發者賬號都有一個初始權重&#xff0c;而權重的高低會影響到賬號的穩定性和真實性&#xff0c;從而影響應用上架的成功率和應用在線時長。 關于提高谷歌賬號權重、活躍度及穩定性&#xff0c;以下的方法和建議可供參考&#xff1a; 1、社區活動…

外設——CAN總線收發器TJA1043

目錄 1. 引腳 2. 工作模式 3. 5種模式和7種狀態標識的理解和使用 1. 引腳 2. 工作模式 該收發器相較于普通收發器&#xff0c;引腳多了幾個&#xff0c;就是功能等多了。TJA1043支持五種操作模式&#xff0c;就是通過控制引腳STB_N和EN來原則。五種模式&#xff1a; 正常模式…

OpenCV滑塊驗證碼圖像缺口位置識別

OpenCV圖像缺口位置識別 1、背景2、圖像缺口位置識別原理3、圖像缺口位置識別實現4、滑塊驗證碼HTTP圖像需要保存到本地嗎1、背景 在使用Selenium完成自動化爬蟲時,許多網站為了防止機器人爬取數據會使用驗證碼(例如滑塊驗證碼)。通過Selenium動作操作,爬蟲可以模擬用戶輸入…

前端工程、靜態代碼、Html頁面 打包成nginx 的 docker鏡像

1. 創建一個 mynginx的目錄 2. 將前端代碼文件夾&#xff08;比如叫 front &#xff09;復制到 mynginx 目錄下 3. 在mynginx 目錄下創建一個名為Dockerfile 的文件&#xff08;文件名不要改&#xff09;&#xff0c;文件內容如下&#xff1a; # 使用官方的 Nginx 鏡像作為基…

神經網絡訓練技巧

1. 逐漸增加訓練數據規模&#xff0c;比如先在小數據集上訓練&#xff0c;之后再增大數據集繼續訓練。

網站權重是什么意思

網站權重是指搜索引擎對網站的評估指標&#xff0c;用以衡量網站的重要性 搜索引擎會根據網站權重來決定網站在搜索結果中的排名和位置&#xff0c;從而決定其在搜索中的可見度 網站權重是多方面因素的綜合評估&#xff0c;其中主要包括網站內容質量、外部鏈接量及質量、網站…

JS逆向之wasm逆向(二)

本文僅供技術交流和技術學習 不做其他用途 接著上一篇繼續講&#xff1a; 上篇地址&#xff1a; JS逆向之wasm逆向(二進制) 網址&#xff1a; aHR0cHM6Ly93d3cuN3E2Y3lqLmNvbTo5MDAxL3JlZ2lzdGVyNDY5Njg/aV9jb2RlPTQ0Mjc5OTU1 這個網站我們后面可以繼續講他的debugger 和滑塊…