開發常用Git/Linux/idea命令快捷鍵總結(持續更新)


在開發過程中,會使用越來越多的命令,或快捷鍵,來幫助我們提高工作效率。本文記錄了我在平時積累的常用命令,分享給大家。

git命令

基本命令

set LESSCHARSET=utf-8 --idea Terminal亂碼(idea自帶的操作git窗口)

git clone 分支名 --將分支克隆到本地

git stash --將修改暫時放到暫存區

git stash pop --從暫存區彈出

git checkout 分支名或文件名 --切換到分支

git pull --拉取最新文件(更新)

git add 文件名 --添加文件(用於提交)

git commit -m "提交備注信息" --提交文件

git push --推送到遠程分支
//這三個通常一起使用

添加了多余文件后,已經add未commit時撤銷添加

git reset HEAD 文件名  --撤銷某文件
git reset HEAD --全撤銷

已經commit還未push時,回退版本號

git reset --mixed 要回退到哪個版本號(本地代碼還保留着)
git reset --hard 要回退到哪個版本號(本地代碼不保留)

注意是兩個短線

push后回退撤銷

對於已經把代碼push到線上倉庫,你回退本地代碼其實也想同時回退線上代碼,回滾到某個指定的版本,線上,線下代碼保持一致.你要用revert命令

git revert用於反轉提交,執行revert命令時要求工作樹必須是干凈的.

git revert用一個新提交來消除一個歷史提交所做的任何修改.

revert 之后你的本地代碼會回滾到指定的歷史版本,這時你再 git push 既可以把線上的代碼更新.(這里不會像reset造成沖突的問題)

revert 使用,需要先找到你想回滾版本唯一的commit標識代碼,可以用 git log 或者在adgit搭建的web環境歷史提交記錄里查看.

git revert c011eb3c20ba6fb38cc94fe5a8dda366a3990c61

通常,前幾位即可

git revert c011eb3

git revert是用一次新的commit來回滾之前的commit,git reset是直接刪除指定的commit

看似達到的效果是一樣的,其實完全不同.

  1. 上面我們說的如果你已經push到線上代碼庫, reset 刪除指定commit以后,你git push可能導致一大堆沖突.但是revert 並不會.
  2. 如果在日后現有分支和歷史分支需要合並的時候,reset 恢復部分的代碼依然會出現在歷史分支里.但是revert 方向提交的commit 並不會出現在歷史分支里.
  3. reset 是在正常的commit歷史中,刪除了指定的commit,這時 HEAD 是向后移動了,而 revert 是在正常的commit歷史中再commit一次,只不過是反向提交,他的 HEAD 是一直向前的.

alias簡化git命令

git config --global alias.別名 原始命令
如:
git config --global alias.st status
git config --global alias.ck checkout
git config --global alias.ct commit

查看提交日志記錄

一般情況下:

1、git log --查看所有提交log

2、git log --author 用戶名 --查詢某用戶提交記錄
效果:

 

3、git log --author 用戶名 --grep "關鍵詞" 顯示某個用戶提交的,含有某關鍵詞的記錄
效果:

4、--oneline簡化顯示 在3的基礎上簡化,只顯示一行,版本號簡化

效果:

 

5.git log --author "git用戶名" --reverse --oneline

翻轉顯示,之前是按時間從早到晚,使用這個參數正好顛倒

 

6、格式化log日志中的時間

默認是這樣的

 

月份和星期是英文縮寫,不容易看

我們可以調一下,有如下兩個命令可參考:

git config log.date iso-local       執行后時間變成這樣:     2018-11-03 03:30:04 +0000

 

git config log.date iso-strict-local     執行后時間變成這樣:   2018-11-03T03:30:04+00:00


7、復雜點的

 

git log --graph --pretty=format:'%Cred%h%Creset - %C(yellow)%d%Creset %s %Cgreen(%cr) %C(blue)<%an>%Creset' --abbrev-commit --date=relative 

 

效果:其實在idea也能看到這樣的提交記錄,底層也都是用的git的命令

Git查看倉庫地址

我們的代碼倉庫多了,或者用的時間長了,很長時間沒有clone過了,很容易忘了clone的URL,這時候我們可以用這個命令

git remote -v

 

查看到當前倉庫的URL

linux命令

作為后台開發,懂點基本的Linux命令是必不可少的。
創建目錄,切換目錄,查找,刪除目錄、文件、ping、telnet等。

find /home/nc/page/thrage -name *index.html* -d 查找這個目錄下的 文件名以某某開頭的 文件全路徑(-d是列出路徑)


ps -ef|grep "java" --查看java進程是否存在

 

netstat -tunlp|grep 端口號,用於查看指定端口號的進程情況

idea快捷鍵

Ctrl + Alt + L 代碼格式化

Ctrl + Alt + O 優化導包

Ctrl + N 查找類

Ctrl + Shift + N 查找類

Alt + insert 生成常用代碼

Ctrl + Shift + Space 自動補全代碼

Ctrl + Space 代碼提示

Ctrl + P 方法參數提示


 

 更多:

IntelliJ IDEA代碼常用的快捷鍵(自查)

解決百度網盤下載慢限速問題(2019親測可用)

Java類是如何默認繼承Object的?

開發常用Git/Linux/idea命令快捷鍵總結(持續更新)

java 金額數字轉換大寫算法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM