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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Git使用的奇技淫巧

發布時間:2024/7/5 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Git使用的奇技淫巧 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

源 | Linux公社

Git 版本對比相關操作

  • [1] 輸出工作區和暫存區的不同。

git?diff
  • [2] 展示暫存區和最近版本的不同

git?diff?--cached
  • [3] 展示暫存區、工作區和最近版本的不同

git?diff?HEAD
  • [4] 展示本地倉庫中任意兩個 commit 之間的文件變動

git?diff?<commit-id>?<commit-id>

Git 分支管理相關操作

  • [1] 展示本地分支關聯遠程倉庫

git?branch?-vv
  • [2] 列出所有遠程分支

git?branch?-r
  • [3] 列出本地和遠程分支

git?branch?-a
  • [4] 查看遠程分支和本地分支的對應關系

git?remote?show?origin
  • [5] 刪除本地分支

#?創建并切換到本地分支git?checkout?-b?<branch-name>#?刪除本地分支git?branch?-d?<local-branchname>#?重命名本地分支git?branch?-m?<new-branch-name>#?快速切換到上一個分支git?checkout?-#?跨分支提交git?checkout?<branch-name>?&&?git?cherry-pick?<commit-id>
  • [6] 刪除遠程分支

git?push?origin?--delete?<remote-branchname>
  • [7] 遠程刪除了分支本地也想刪除

git?remote?prune?origin
  • [8] 關聯遠程分支

#?關聯之后?git?branch?-vv?就可以展示關聯的遠程分支名了#?同時推送到遠程倉庫直接?git?push?命令且不需要指定遠程倉庫了git?branch?-u?origin/mybranch

Git 文件處理相關操作

  • [1] 展示所有 tracked 的文件

bash

git?ls-files?-t
  • [2] 展示所有 untracked 的文件

bash

git?ls-files?--others
  • [3] 展示所有忽略的文件

bash

git?status?--ignoredgit?ls-files?--others?-i?--exclude-standard
  • [4] 強制刪除 untracked 的文件

bash

#?使用clean命令后,刪除的文件無法找回#?不會影響tracked的文件的改動,只會刪除untracked的文件#?如果不指定文件文件名,則清空所有工作的untracked文件git?clean?<file-name>?-f
  • [5] 強制刪除 untracked 的目錄

bash

#?如果不指定目錄名稱,則清空所有工作的untracked目錄git?clean?<directory-name>?-df
  • [6] 清除 gitignore 文件中記錄的文件

bash

git?clean?-X?-f
  • [7] 恢復刪除的文件

bash

#?得到deleting_commit信息git?rev-list?-n?1?HEAD?--?<file_path>#?回到刪除文件deleting_commit之前的狀態git?checkout?<deleting_commit>^?--?<file_path>

Git 遠程倉庫相關操作

  • [1] 列出所有遠程倉庫

bash

git?remote
  • [2] 修改遠程倉庫的 url 地址

bash

git?remote?set-url?origin?<URL>
  • [3] 增加遠程倉庫地址

bash

git?remote?add?origin?<remote-url>

Git 存儲狀態相關操作

  • [1] 存儲當前的修改但不用提交 commit

bash

git?stash
  • [2] 保存當前狀態包括 untracked 的文件

bash

git?stash?-u
  • [3] 展示所有 stashes 信息

bash

git?stash?list
  • [4] 回到某個 stash 狀態

bash

git?stash?apply?<stash@{n}>
  • [5] 回到最后一個 stash 的狀態并刪除這個 stash 信息

bash

git?stash?pop
  • [6] 刪除所有的 stash 信息

bash

git?stash?clear
  • [7] 從 stash 中拿出某個文件的修改

bash

git?checkout?<stash@{n}>?--?<file-path>

Git 配置代碼相關操作

  • [1] 配置 ssh 代理

bash

#?直接使用shadowsocks提供的socks5代理端口$?cat?~/.ssh/configHost?gitlab.comProxyCommand?nc?-X?5?-x?127.0.0.1:1080?%h?%pHost?github.comProxyCommand?nc?-X?5?-x?127.0.0.1:1080?%h?%p
  • [2] 配置 http 和 socks 代理

bash

#?適用于?privoxy?將?socks?協議轉為?http?協議的?http?端口git?config?--global?socks.proxy?'127.0.0.1:1080'git?config?--global?http.proxy?'http://127.0.0.1:8001'git?config?--global?https.proxy?'http://127.0.0.1:8001'

Git 其他高級相關操作

  • [1] 把某一個分支到導出成一個文件

bash

git?bundle?create?<file>?<branch-name>
  • [2] 把某一個文件導入成一個分支

bash

#?新建一個分支,分支內容就是上面?git?bundle?create?命令導出的內容git?clone?repo.bundle?<repo-dir>?-b?<branch-name>
  • [3] 修改上一個 commit 的描述

bash

#?如果暫存區有改動同時也會將暫存區的改動提交到上一個commit中去git?commit?--amend
  • [4] 查看某段代碼是誰寫的

bash

git?blame?<file-name>
  • [5] 回到某個 commit 狀態并刪除后面的 commit 提交

bash

#?和revert命令不同,reset?命令會抹去某個commit_id之后的所有commit提交#?默認就是-mixed參數git?reset?<commit-id>#?回退至上個版本將重置HEAD到另外一個commit#?并且重置暫存區以便和HEAD相匹配,但是也到此為止,工作區不會被更改git?reset?--?mixed?HEAD^#?回退至三個版本之前,只回退了commit的信息,暫存區和工作區與回退之前保持一致#?如果還要提交,直接commit即可git?reset?--?soft?HEAD~3#?徹底回退到指定commit-id的狀態,暫存區和工作區也會變為指定commit-id版本的內容git?reset?--?hard?<commit-id>
  • [6] 回到遠程倉庫的狀態

bash

#?拋棄本地所有的修改,回到遠程倉庫的狀態git?fetch?--all?&&?git?reset?--hard?origin/master
  • [7] 重設第一個 commit 信息

bash

#?也就是把所有的改動都重新放回工作區并清空所有的commit信息,這樣就可以重新提交第一個commit了git?update-ref?-d?HEAD
  • [8] 查找已經刪除的文件提交

bash

#?模糊查找git?log?--all?--full-history?--?"**/thefile.*"#?精確查找git?log?--all?--full-history?--?<path-to-file>git?log?--diff-filter=D?--summary?|?grep?<file_name>?|?awk?'{print?$4;?exit}'?|?xargs?git?log?--all?--#?查看所有刪除文件git?log?--diff-filter=D?--summary?|?grep?delete#?查看產出文件是誰提交的git?log?--diff-filter=D?--summary?|?grep?-C?10?<file_name>

Git 給 Github 配置 RSS

/*?Repo?releases?*/https://github.com/:owner/:repo/releases.atom/*?Repo?commits?*/https://github.com/:owner/:repo/commits.atom/*?Private?feed?(You?can?find?Subscribe?to?your?news?feed?in?dashboard?page?after?login)?*/https://github.com/:user.private.atom?token=:secret/*?Repo?tags?*/https://github.com/:user/:repo/tags.atom/*?User?activity?*/https://github.com/:user.atom

尋求報道、約稿、文案投放:
添加微信xixiaoyao-1,備注“商務合作”

后臺回復關鍵詞【入群

加入賣萌屋NLP/IR/Rec與求職討論群

后臺回復關鍵詞【頂會

獲取ACL、CIKM等各大頂會論文集!

總結

以上是生活随笔為你收集整理的Git使用的奇技淫巧的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。