日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Git1】指令,分支,ssh免密登录

發(fā)布時(shí)間:2024/4/24 编程问答 75 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Git1】指令,分支,ssh免密登录 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

  • 1.init/add/commit/pull/push,status/diff/log/reflog,reset/checkout/clone:工緩歸
  • 2.分支操作:git branch -v(默認(rèn))查看本地分支
    • 2.1 分支打tag:更新本地和gitlab同步
  • 3.idea操作git:create new project-Maven
  • 4.ssh免密登錄(不是https):whoami,adduser,su,-i
    • 4.1 應(yīng)用:每臺(tái)機(jī)器兩兩連接(大數(shù)據(jù)集群配置)


1.init/add/commit/pull/push,status/diff/log/reflog,reset/checkout/clone:工緩歸

SVN:集中式版本控制即保存在一臺(tái)電腦,容易故障或連的客戶端多了會(huì)卡頓。git分布式:完整倉庫分布在不同人電腦主機(jī)上,遠(yuǎn)程倉庫只是交換意見的地方。Git官網(wǎng):https://git-scm.com/ 。win版鏈接:https://pan.baidu.com/s/19g5I5j6UFKfkfxDjllQ8ng 提取碼:7uaq 。

git log git reset c5c7ac46262165ced60497bbfa8b8a0949ef5956 git status git add meta-huaqin/meta-hollywood/recipes-plats/hal/files/hal_temp.py git commit git log git push origin a-dev -fgit commit -m '提交信息' --no-verify //可以跳過代碼檢查 git commit --amend -m '提交信息' --no-verify //對上一次的提交進(jìn)行修改 git stash save a git stash list git status git pull origin master (此時(shí)git log是遠(yuǎn)程最新commit) git stash pop a git show


桌面新建名為gitdemo文件夾通過vscode軟件打開,vscode安裝兩個(gè)插件:Git History,GitLens。如下執(zhí)行后即創(chuàng)建了本地版本庫,vscode左下角出現(xiàn)master分支。

新建1.txt文件。git add 文件前先ctrl+s,git diff,git status,git log查看需提交的文件路徑。

一般不用git commit -m,直接git commit進(jìn)入vi界面(進(jìn)入前要git config core.editor vim設(shè)一下vi模式),vi如下寫法,注意在最上面寫。

[Type-Platform] DescriptionReview: reviewer nameJiraID : xxxxTestPlan : 參數(shù)說明如下: Type: feat:新增功能 fix:bug 修復(fù) docs:文檔更新 style:不影響程序邏輯的代碼修改(修改空白字符,格式縮進(jìn),補(bǔ)全缺失的分號(hào)等,沒有改變代碼邏輯) refactor:重構(gòu)代碼(既沒有新增功能,也沒有修復(fù) bug) perf:性能, 體驗(yàn)優(yōu)化 test:新增測試用例或是更新現(xiàn)有測試 build:主要目的是修改項(xiàng)目構(gòu)建系統(tǒng)(例如 新加項(xiàng)目,編譯配置等)的提交 ci:主要目的是修改項(xiàng)目繼續(xù)集成流程(例如 Travis,Jenkins,GitLab CI,Circle等)的提交 revert:回滾某個(gè)更早之前的提交Platform: kestrel/hollywood/common … Description : commit info JiraID : Jira number

如果git commit失敗執(zhí)行如下添加簽名,并用git config --global --list查看(--global可換成--local,--list可換為-l)。

git config --global user.name "follow" git config --global user.email "follow@126.com" git config --global credential.helper store ; cat ~/.gitconfig echo "[credential]" >> .git/config echo " helper = store" >> .git/config

github新建名為gitdemo倉庫,復(fù)制下面兩行到vscode終端執(zhí)行:git remote add/remove添加/刪除一個(gè)遠(yuǎn)端倉庫,origin名字可代替后面github倉庫(這是github倉庫是https版本,換成ssh版本并配置key免密登錄),git remote -v顯示所有遠(yuǎn)程倉庫。

git push將本地歸檔區(qū)內(nèi)容提交到遠(yuǎn)程github倉庫。因?yàn)椴捎胔ttps會(huì)提示登錄github。關(guān)聯(lián)后就可以直接git pull/push 空(git clone不需要自己創(chuàng)建本地版本庫,會(huì)自動(dòng)和遠(yuǎn)程版本庫進(jìn)行關(guān)聯(lián))。

git status查看工作區(qū)變更是紅色(緩存區(qū)是綠色)。git reset --mixed commithash(這個(gè)commithash之前都沒了,默認(rèn)mixed)或HEAD^^(回退2個(gè)版本)(緩存區(qū)和歸檔區(qū)都回滾)。git reset --hard硬還原前面回滾掉的版本,commithash因?yàn)楸换貪L掉了,用git log 空(每次提交commit信息)查不到,用git reflog 空(所有操作信息)查,三個(gè)區(qū)都回滾了保持一致。git reset --soft只回滾歸檔區(qū)。將中間一次commithash扣掉,用git revert commithash,這個(gè)commithash的三個(gè)區(qū)都被扣掉。

2.分支操作:git branch -v(默認(rèn))查看本地分支


同一分支上git push 出現(xiàn) [rejected] 分支沖突,解決是git pull(會(huì)出現(xiàn)Auto-merging自動(dòng)合并,git pull = git fetch + git merge),進(jìn)行討論刪除,再commit和push。


如上先切換到master上再如下本地分支的合并,刪除分支。git push <遠(yuǎn)程主機(jī)名> <本地分支名>:<遠(yuǎn)程分支名>,git push origin dev:dev 和 git push origin dev 等效,因?yàn)楸镜胤种Ш瓦h(yuǎn)程分支同名可以省略冒號(hào)部分。

2.1 分支打tag:更新本地和gitlab同步

git tag //查看本地分支標(biāo)簽 git tag -a s3ip-v0.02.00 -m "s3ip-v0.02.00 release" git checkout -b s3ip-v0.02.00-release 編譯代碼,image刷到目標(biāo)機(jī)器測試功能 創(chuàng)建壓縮包(image,md5,releaseNote,自測報(bào)告),把壓縮包發(fā)給pm并上傳W:\3.OpenBMC\Project\S3IP\release 上傳tag(git push origin s3ip-v0.02.00)和branch

3.idea操作git:create new project-Maven




選中如下右擊New-.ignorefile-.gitignorefile(Git),選中Example…(.idea,.iml)。之后可以選中文件夾或文件右擊Add to .gitignore file。如下讓工程關(guān)聯(lián)git,多了.git文件夾。

選中文件/文件夾右擊Git-Add,Add一次就行(在命令行里修改了,每次都要add),后面只要選中整個(gè)工程右擊Git-Commit。

撤銷剛寫的,一個(gè)文件ctrl+z可以,很多文件不行。選中整個(gè)工程右擊Git-Revert后選文件或文件夾(同時(shí)撤銷工作區(qū)和暫存區(qū),因?yàn)槟J(rèn)一直Add進(jìn)了暫存區(qū))。如下點(diǎn)擊后選擇Hard。

選中整個(gè)工程右擊show in Explorer(在git bash中g(shù)it reflog查看)。再選中整個(gè)工程右擊Git-Repository-Reset HEAD。

所有分支修改了都要commit,合并時(shí)在master分支上選中整個(gè)工程右擊Git-Repository-Merge changes,選擇dev分支。如果沖突(相同文件相同行不同),找人商量解決,改完沖突要重新Add再commit。

4.ssh免密登錄(不是https):whoami,adduser,su,-i

ssh可以免密碼,但要配置公鑰到github上。

如下一行(linux中沒有.exe)是在.ssh文件夾中(原來只有known_hosts文件)生成兩個(gè)id文件,如下ssh-rsa也要復(fù)制進(jìn)去。


如下ssh免密登錄原理:crt和xshell就是通過SSH登錄Server,ssh-keygen生成公鑰和私鑰,如下進(jìn)行1和2就可以免密登錄了。

如下兩個(gè)ip是一臺(tái)機(jī)器兩個(gè)docker,為什么詢問root密碼而不是別的密碼?如下在0.7窗口。


如下在0.8窗口。

如下在0.7窗口。

4.1 應(yīng)用:每臺(tái)機(jī)器兩兩連接(大數(shù)據(jù)集群配置)

如何配置ssh的key?方法1:每臺(tái)生成再發(fā)給其他6臺(tái),需要每臺(tái)都登陸并生成再發(fā)給其他機(jī)器。方法2:公鑰復(fù)制到authorized_key中,私鑰id_rsa,每臺(tái)都同一把鎖和鑰匙,方法2好。

如下JenKins集群例子也是采用2好,master領(lǐng)到Task任務(wù)后,worker才是啟動(dòng)起來的容器(一開始不存在),并且worker要去git中拉代碼。

總結(jié)

以上是生活随笔為你收集整理的【Git1】指令,分支,ssh免密登录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。