<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Git

      Git

      初始化

      ...

      基礎操作

      • git init: 初始化當前文件夾作為一個git項目
      • git add .: 將當前文件夾下所有的文件添加到 暫存區
      • git commit -m "在雙引號里輸入你想提交的信息": 提交暫存區中的文件到 本地存儲庫

      分支

      • git switch -c <branch-name>:創建并切換到新分支(推薦,Git 2.23+)。
      • git checkout -b <branch-name>:創建并切換到新分支(適用于較舊版本的 Git)
      • 創建分支并上傳到遠端倉庫
        1. 創建并切換到分支

          git switch -c <branch-name>
          或者
          git checkout -b <branch-name>

        2. 上傳

          git init
          git add .
          git commit -m "first commit"

        3. 當你使用 git push -u origin <branch-name> 設置了上游分支后,Git 會將當前本地分支(在這個例子中是 <branch-name>)與遠程倉庫中的 <branch-name> 分支建立跟蹤關系。這意味著以后在 <branch-name> 上執行 git push 或 git pull 時,Git 會自動知道要與哪個遠程分支進行交互

          git push -u origin <branch-name>

      merge與rebase

      merge

      git merge

      # 切換到目標分支
      git checkout 主分支
      
      # 將其他分支合并到當前分支
      git merge 特性分支
      
      # 如果有沖突,解決沖突后添加解決的文件
      git add .
      
      # 完成合并
      git commit
      

      git merge --abort
      嘗試取消當前的合并過程,并將你的工作目錄恢復到合并開始前的狀態。這是在合并尚未完成(即未commit)時取消合并的標準方法。

      rebase 變基

      交互式變基(Interactive Rebase)

      這是最靈活的方式之一,允許你挑選、編輯、壓縮或者刪除提交
      當有多個commit的時候,希望把多個commit合并成一個完整的commit。
      git loggit log --oneline查看提交歷史的編號
      假設現在有以下幾個commit,現在覺得add 1, add 2,add 3其實可以合并成一個commit:add1~3

      (Head->master) add 3
      add 2
      add 1
      init

      • 首先,假設現在HEAD在add 3,git rebase HEAD~3,希望合并前三個commit。
      • 之后將編輯交互式變基列表:
        這將打開一個文本編輯器,列出最近的3次提交。每一行代表一個提交,并以pick開頭。要合并提交,只需將除第一個之外的所有提交前的pick改為squash(或簡寫s)。這會告訴Git將這些提交與前面的提交合并。
      • 保存并關閉編輯器:
        完成后保存更改并關閉編輯器。Git會開始應用你的修改。對于每個被標記為squash的提交,它還會提示你編輯合并后的提交信息。
      • 完成變基:
        最后一步是確認合并后的提交信息,然后保存退出。這樣就完成了提交的合并。
      直接通過重置和暫存區操作

      這種方法適用于當你想把一系列提交壓縮成一個新的提交。

      • 找到起點之前的最后一次提交的哈希值:
        比如說你想從init開始合并之后的所有提交。

      git log --oneline

      • 軟重置到那個提交:
        使用git reset命令進行軟重置(不會影響工作目錄中的文件)。

      git reset --soft [init的哈希值]

      • 重新提交所有更改:
        現在所有的改動都處于暫存狀態,你可以創建一個新的提交。

      git commit -m "合并后的提交信息"

      比較代碼

      idea的圖形化工具很方便
      image

      遠程

      • git remote -v: 驗證遠程倉庫
        image

      高級操作

      1

      需求:將某個分支,指定commit之后的提交回滾,并將這個commit之后的提交,合并到另一個新的分支上。
      操作:

      1. 查看提交歷史

        git log --oneline

      2. 創建一個臨時分支(可選但推薦):為了防止誤操作丟失提交,可以先創建一個臨時分支保存當前狀態

        git branch temp-branch

      3. 回退當前分支到指定 commit(保留更改為未提交狀態)
        3.1. 如果你想保留更改內容(只是撤銷提交),使用:

        git reset --soft abc1234

        3.2. 如果你想刪除這些更改(完全回退):

        git reset --hard abc1234

        3.3. 如果你已經push到遠程,需要force強制回退

        git push origin <你的分支(HEAD表示與當前分支一致的遠程分支)> --force
        git push origin HEAD --force

      4. 獲取從 abc1234 到原分支頂端的所有提交 hash
        查看從 abc1234 之后的提交:

        git log abc1234..temp-branch --oneline

        記錄下這些提交的 hash(比如 commit1, commit2, ...)

      5. 將這些提交應用到另一個分支(比如 feature)
        切換到目標分支

        git checkout feature

        然后依次 cherry-pick 提交(或 rebase):

        方法 A:逐個 cherry-pick

        git cherry-pick commit1
        git cherry-pick commit2
        ...

        方法 B:交互式 rebase(更適用于連續提交)

        git rebase abc1234 temp-branch

        這會把 temp-branch 上從 abc1234 之后的所有提交重新應用到當前分支上

      Q: 我不想修改原分支(main),只想提取提交合并到別的分支怎么辦?
      A: 不用 reset 原分支,直接用 rebase 或 cherry-pick 即可。

      git checkout feature
      git rebase abc1234 main

      git rebase 很強大,但它是“改寫歷史”的操作,適用于本地私有分支或尚未共享的提交;對于遠程分支或多人協作分支,請謹慎使用,避免強制推送帶來的混亂

      posted @ 2024-12-09 15:02  chendsome  閱讀(29)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产精品中文字幕av| 国产成人永久免费av在线| 欧美videos粗暴| 日韩有码中文字幕一区二区| 国产精品自在自线免费观看| 国产精品无码专区| 洱源县| 国产国产久热这里只有精品| 动漫AV纯肉无码AV电影网| 成人精品日韩专区在线观看| 深夜视频国产在线观看| 精品国产中文字幕在线看| 美女无遮挡免费视频网站| 国产啪视频免费观看视频| 免费无码成人AV片在线| 国产中文字幕精品喷潮| 亚洲成人av综合一区| 中国大陆高清aⅴ毛片| 国产成人综合网亚洲第一| 97人妻中文字幕总站| 武定县| 毛葺葺老太做受视频| 亚洲AV成人片不卡无码| 亚洲情A成黄在线观看动漫尤物| 国语自产拍精品香蕉在线播放| 日韩高清不卡免费一区二区| 无码中文字幕人妻在线一区| 亚洲AV成人片在线观看| 两个人日本www免费版| 日本中文字幕有码在线视频| 人人爽人人爽人人片av东京热| 人成午夜免费大片| 自拍偷拍第一区二区三区| 日本无翼乌邪恶大全彩h| 国产精品尤物乱码一区二区| 性奴sm虐辱暴力视频网站| 疯狂做受XXXX高潮国产| 亚洲天堂av在线免费看| 日韩无套无码精品| 在线观看热码亚洲av每日更新| 婷婷成人丁香五月综合激情|