1. 程式人生 > >Hoist the Colours! Our world is wide!

Hoist the Colours! Our world is wide!

git的使用

git安裝地址

git的使用

  • 檢視幫助,所有的命令通用
git cmd --help //cmd是對應的命令,輸入之後他會開啟對應的網頁
  • clone命令,從遠端倉庫中copy程式碼到本地,方式一般常用的有兩種方法
    1.1. https
    1.2. ssh
// 例如
git clone [email protected]:liweijieok/android-open-project.git  //ssh
git clone https://github.com/liweijieok/android-open-project.git //https 
  • 本地基本配置,git config,配置使用者名稱和郵箱,下面是配置全域性的。就是整個git環境下的,還可以去配置一些快捷,比如commit命令可以配置為cm
// 檢視配置
git config --list
// 配置使用者名稱和郵箱
git config --global user.name "youname"
git config --global user.email "youemail"
// 配置命令別名,比如checkout可以簡寫為co
git config --gloabl alias.co checkout
//還可以配置其他的別名alias.xx xxx 其中xx 是別名 xxx是原來的操作名稱
  • 本地建立git版本庫
git init
  • 新增到git暫存區,就是可以把該檔案列為git版本控制的範圍
// 新增某一個檔案到暫存區
git add <filename> // 新增所有的檔案到暫存區 git add -A
  • 提交修改納入版本庫
git commit -m"提交描述"
  • 切換分支
git checkout branchName
git checkout -b newBranch originBranch//新建分支,基於originbranch,然後切換過去,沒有最好一個引數的時候則是預設從當前分支作為originbranch
  • 關聯遠端倉庫
git remote add origin [email protected].com:liweijie/xxx.git
//其中
[email protected]
.com:liweijie/xxx.git是遠端倉庫的地址,有些是是ssh,有些時候是https git remote // 不帶引數,列出已經存在的遠端分支 git remote -v //列出詳細的資訊,每一個遠端分支都會帶有一個url
  • 生成ssh密匙
ssh-keygen -t rsa -C youemail
// 之後可以設定ssh的生成的檔名和密碼,一般密碼為空就行,之後會生成xxx.pub和xxx檔案,前面是公鑰,後面是私鑰,公鑰需要配置在git伺服器上面
  • 分支管理
//檢視本地所有分支
git brach
// 檢視所有分支
git branch -a
// 檢視遠端分支
git bracnh -r
// 生成新分支
git branch branchName
// 刪除本地分支
git branch -d branchName // 假如該分支沒有被合併過會提示並沒被合併過
git branch -D branchName //不會有同時
// 所以需要生成一個新的分支並且切換的話是
git branch newbranch
git checkout newbranch
  • 合併分支
//當前分支合併別的分支,直接合並
git merge otherName
  • 拉取遠端分支
git pull <遠端主機名> <遠端分支名>:<本地分支名>
//比如
git pull origin master:master // 拉取遠端主機origin的master與本地的master分支合併
// 假如是拉取遠端主機的遠端分支與當前分支合併,後面部分可以不寫
git pull origin master
//等同於
git fetch origin
git merge origin/master
//在某一些場合,git回自動在本地與遠端分支之間,建立一種追蹤關係(tracking)。
//比如,在git clone的時候,所欲的本地分支預設與遠端主機的同名分支建立追蹤關係,也就是說,本地的master分支自動追蹤origin/mater分支。
//如果當前分支與遠端分支存在追蹤關係,git pull就可以省略遠端分支名
git pull origin
//如果當前分支只有一個追蹤分支,連遠端主機名都可以省略
git pull
//你也可以手動的建立這一種追蹤關係
git branch --set-upstream branchName origin/remoteBranch
  • 獲取最新的遠端版本庫內容
git fetch <遠端主機名>//一般為origin
//比如遠端主機那裡別人提交了新的分支,你本地需要獲取,就可以
git fetch origin //把origin遠端主機的所有分支的更新
//假如只是想取回特定分支的更新,可以指定分支名字
git fetch origin 
  • 推送本地更新到遠端伺服器
// 需要注意的是他跟git pull是相反的 git pull origin remoteBranch:localBranch
git push origin localBranch:remoteBranch 
//當推送分支和遠端對應的分支存在追蹤關係的時候,可以直接
git push origin localBranch //遠端不存在對應的分支的時候回自動新建並且建立追蹤關係
// 刪除遠端分支
git push origin  :remoteBranch //其中":"前面有一個空格不可以少,表示推送空白到遠端,這樣子就可以刪除遠端分支
// 如果當前分支與遠端分支存在追蹤關係,則本地分支和遠端分支都可以省略
git push origin
//假如當前分支與多個主機(一般是隻有origin),可以使用-u知道預設主機
git push -u 遠端主機名 localBranch:remoteBranch
//推送本地的所有分支到遠端
git push --all origin
//推送的時候加上tag,下面是表示推送所有的tag,需要注意是否有許可權
git push origin --tags
  • 打tag
git tag -a 標籤號-m"標籤描述"
// 比如
git tag -a V1.0 -m"1.0版本完成"
//檢視tag
git tag
//或者
git tag -l
//刪除標籤
git tag -d 標籤號
  • 合併分支
//合併別的分支到當前分支
git merge branchName 
//合併分支
git merge resultBranch feature 後者是被合併到前者那裡
  • 檢視狀態
//檢視還沒有被列入版本庫的檔案和還沒有被commit的檔案
git status
  • 檢視commit但是沒有被push的檔案
git log localBranch ^origin/remoteBranch  // 檢視commit沒有被push的詳細
git cherry -v //檢視commit沒有push的版本號 
  • 儲存狀態
// 場景是你需要切換分支,但是當前分支的修改還不能提價
git stash//儲存當前分支修改狀態
// 修改完其他分支的東西回來,需要還原
git stash pop //恢復原來沒有commit的修改
//列出stash
git stash list
  • 列出提交日誌
//列出所有歷史記錄
git log
// 列出提交記錄的前n條
git log -n
// 顯示簡要的增加行數統計,每次提交的檔案變更,-n作用同上,可以省略
git log --stat -n
//跟上面一樣,不過更加強大,更改的地方會顯示出來
git log -p -n
//一行顯示,只顯示hash和提交說明
git log --pretty=online
// 圖形化顯示
git log --pretty=format:"格式化內容" --graph
//比如
git log --pretty=format:"%H %s" --graph -n //表示顯示提交物件的完整hash和提交說明
//format可選有
%H  提交物件(commit)的完整雜湊字串
%h  提交物件的簡短雜湊字串
%T  樹物件(tree)的完整雜湊字串
%t  樹物件的簡短雜湊字串
%P  父物件(parent)的完整雜湊字串
%p  父物件的簡短雜湊字串
%an 作者(author)的名字
%ae 作者的電子郵件地址
%ad 作者修訂日期(可以用 -date= 選項定製格式)
%ar 作者修訂日期,按多久以前的方式顯示
%cn 提交者(committer)的名字
%ce 提交者的電子郵件地址
%cd 提交日期
%cr 提交日期,按多久以前的方式顯示
%s  提交說明
  • 再次修改gitignore檔案並且生效
//場景是一些不需要被提價版本庫的檔案以及被提交了,這時候需要把他重新在版本庫中去除
git rm -r --cached .
git add .
git commit -m"update .gitignore"
  • LInux的一些簡單命令
//載入修改檔案內容
vi <filename>
//一般退出,比如查看了log
j//向下
k//向上
i //插入修改
//退出儲存:
Esc+":"+"wq"
//檔案沒有被改動
Esc+":"+"q"
//不儲存推出
Esc+":"+"q!"
//強制推出:
Esc+":"+"!"//檢視檔案
cat <filename>
//進入某一個資料夾
cd <dirPath>
//新建檔案
mkdir <dirname> <dirname2>
//刪除檔案
rm
//列出資料夾下的檔案
ls
//列出路徑
pwd
注意:命令都是小寫

相關推薦

Hoist the Colours! Our world is wide!

git的使用 git安裝地址 git的使用 檢視幫助,所有的命令通用 git cmd --help //cmd是對應的命令,輸入之後他會開啟對應的網頁 clon

Latex: 解決 The gutter between columns is x inches wide (on page x), but should be at least 0.2 inches. 問題

出現 會議 檢查 sta BE cat wide -c 議論文 參考: Sample_WCCI.tex Latex: 解決 The gutter between columns is x inches wide (on page x), but should be at l

How The Design World Is Being Ripped Apart Right Now

How The Design World Is Being Ripped Apart Right NowNow that Design is on the move from the marketing & communication departments to the boardrooms, de

Our Sun Is Lighter Than Ever, And The Problem Is Getting Worse

Here on Earth, the ingredients for life to survive, thrive, evolve, and sustain itself on our world have all coexisted without fail for billions of years.

Nikola Danaylov on the Always Another Way Podcast: The World is Transformed by Asking Questions

A couple of weeks ago I did an interview on the Always Another Way Podcast. Now, let’s be clear that this was a different kind of interview I did here, s

The Best Neato Vacuum is On Sale, and 17 More of Our Best Weekend Deals: Acer, Patagonia, Amazon

We have so many gaming deals this week that we've already updated our lists of PS4 and Switch bundles and deals. But if you're not in the mood to sit in yo

The connection to adb is down, and a severe error has occured

真的 findstr ole pla a10 tool fcm ott art 相信不少人在android中都遇到了你下面不好解決的問題: 首先描寫敘述癥狀,例如以下圖 解決方法: 方法1:先在cmd中adb kill-server,然後adb -startser

Android 提示: The connection to adb is down, and a severe error has occured.

又一 rac 重新啟動 clip 手機 text track bsp 列表 今天早上打開Eclipse,一直提示 The connection to adb is down, and a severe error has occured,無法執行程序。重新啟動Eclip

The Cheap KD 10 is my best shoe yet

cit work min appear lac yar eth ini channel 10 years of anything is fairly huge Cheap KD 10, but adding something as great as Flyknit cau

ImportError: The _imagingft C module is not installed

下載 .py pil www. .com gin 編譯 uci 網上 Python的圖形庫(PIL), 不過在官方下載了支持Python2.7的PIL Windows安裝包後,運行過程中發現會報_imagingft C module is not installed錯誤。

tomcat閃退無法啟動 the catalina_home environment variable is not defined correctly this environment variable is needed to run this program

新增 cor sta 啟動tomcat 計算 jdk版本 ogr jdk 環境變量 未成功配置CATALINA_HOME 1、計算機>屬性>環境變量, 新建環境變量。變量名為CATALINA_HOME ,變量值tomcat的解壓目錄,註意後面不用多加“\”或者

HDU 5792 World is Exploding (離散化+樹狀數組)

odi world list clear scan mes 處理 namespace lower 題意:給定 n 個數,讓你數出 a < b && c < d && a != b != c != d && Aa

Hadoop HDFS: the directory item limit is exceed: limit=1048576問題的解決

hadoop hdfs 問題描述:1.文件無法寫入hadoop hdfs文件系統;2.hadoop namenode日誌記錄 the directory item limit is exceed: limit=10485763.hadoop單個目錄下文件超1048576個,默認limit限制數為104

VMware安裝VMware tool是 遇到The path "" is not a valid path to the 3.10.0-693.el7.x86_64 kernel headers.

版本 ron not kernel nbsp valid header function install The path "" is not a valid path to the 3.10.0-693.el7.x86_64 kernel headers.問題是找不到內核

Linux下tomcat啟動Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At least one of

環境 技術分享 variable ava eight 錯誤 mbr bin p s 在linux下安裝好tomcat啟動時報如下錯誤: Neither the JAVA_HOME nor the JRE_HOME environment variable is defin

ubuntu安轉QTcreator出現The default mkspec symlink is broken

.net ref tails http com 存在 mage AR details QT Creator安裝:https://blog.csdn.net/arackethis/article/details/42326967 QT SDK安裝:https://blog.c

The string "--" is not permitted within comments.

uil epo AR exceptio ext wrap bat nts XP 最近用mybatis做開發的時候遇到這個錯:The string "--" is not permitted within comments. 經檢查是mapper.xml配置文件註解的時候出

JSP報錯The value for the useBean class attribute *** is invalid.

再次 attribute use 基本 sdn 正常 沒有 class art 環境:IDEA+Tomcat9+JDK1.8 在前期學習時,環境一直能夠“正常”使用,實際上環境並沒有完全搭建成功。 推薦: https://blog.csdn.net/lw_power/art

ES報the same id but is a different node instance

request exc 解決 tran enabled iam job elastics 產生 ES啟動報如下錯誤[2018-10-06×××3:12:15,871][INFO ][o.e.d.z.ZenDiscovery ] [es3] failed to sen

Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'.

技術 loading 使用 -c drive sql mysql- 連接 不可 在連接數據庫時,使用了最新版本的mysql-Connector,所以導致老版本的“com.mysql.jdbc.Drive”不可行,要改為“com.mysql.cj.jdbc.Driver”