久久精品国产91精品亚洲_欧美日韩性视频在线_欧美私人啪啪vps_亚洲精品乱码久久久久久按摩观_99热这里只有精品8_黑丝一区二区三区_国产美女精品免费电影_亚洲图片在线观看_久久不见久久见免费视频1_亚洲欧美在线免费观看_欧美一区二区私人影院日本_国产精品美女视频网站_一区二区三区精品国产_亚洲美女免费精品视频在线观看_国产午夜精品久久_久久国产精品久久久久久久久久

 
您現在的位置:首頁 ? 知識庫 ? 軟件開發 軟件開發
Git進階使用筆記
發布日期:2018-04-17

內容導讀

一直以來,Git的使用只停留在簡單的操作上。但是這種方式Git會盡可能的使用 Fast forward 模式,這種情況下,刪除分支后,分支信息會一并刪除。tag標簽即為給 commit 操作產生的id值取的別名。添加后,遠程倉庫的名字就叫做origin, Git的默認叫法,也可以更改。/home/git/.ssh/authorized_keys 一行一個用戶,如果沒有該文件,手動創建即可。當前用戶的配置文件在home目錄的 .gitconfig ,可以直接修改文件。

一直以來,Git的使用只停留在簡單的操作上。要得心應手的使用Git,必須了解點其他的東西。

配置個人信息

$ git config --global user.name "xxyangyoulin"$ git config --global user.email "xxyangyoulin@gmail.com"

查看提交日志

git log
git log --pretty=oneline #簡略查看信息
git log --graph --pretty=oneline --abbrev-commit #查看分支信息

文件差別對比

git diff file
  1. git diff filepath

    工作區與暫存區比較

  2. git diff HEAD filepath

    工作區與HEAD ( 當前工作分支) 比較

  3. git diff --staged 或 --cached filepath

    暫存區與HEAD比較

  4. git diff branchName filepath

    當前分支的文件與branchName 分支的文件進行比較

  5. git diff commitId filepath

    與某一次提交進行比較

進行版本穿梭

在Git中,用HEAD表示當前版本,上一個版本就是HEAD^,上上一個版本就是HEAD^^,往上寫成HEAD~100。

回上一版

git reset --hard HEAD^

此時git log 發現當前版本以后的版本消失。

想回到未來版本?未關閉窗口之前,找到版本號:

git reset --hard <版本號>

版本的跳轉,HEAD如同一個指針,跳轉不過是指針指向不同的版本。

HEAD指向哪個版本,當前版本定位就在哪兒。

但是找不到版本號了?

git提供了查看你的每一次命令的命令:

git reflog

撤銷修改

git checkout -- changedFile

將會回到文件最后一次commit或者add時候的狀態。

已經被你add了?

撤銷add

git reset HEAD file

這樣add的文件就被撤銷回到工作區了。

刪除文件

  1. 工作區刪除了文件并且確定也要刪除版本庫的該文件:

git rm hello.txtgit commit -m 'rm hello'
  1. 刪錯了?

git checkout -- hello.txt

恢復到最新版本。

進行分支管理

創建新的分支

git branch newbranch

切換到新分支

git checkout newbranch

創建并且切換

git checkout -b newbranch

查看當前分支

git branch

合并指定分支

git merge otherbranch

合并發生沖突,手動修改沖突文件并提交即可。

但是這種方式Git會盡可能的使用Fast forward模式,這種情況下,刪除分支后,分支信息會一并刪除。

禁用Fast forward模式?

git merge --no-ff otherbranch

--no-ff可以保留之前的分支歷史,能夠更好的查看歷史分支信息。而git merge只保留單條分支記錄。

gitmergenoff.png

刪除指定分支

git branch -d otherbranch

推薦的是:創建一個分支完成一個任務,完成任務合并分支后刪除完成任務的分支。

但是提示沒有合并分支?

git branch -D otherbranch

強制刪除。

儲藏工作現場

工作途中,我們在A分支工作,當前任務未完成,沒有添加到暫存區,但是需要緊急修復bug,使用:

git stash

儲存現場,然后切換到需要修復bug的分支B。

接著,創建修復bug的分支C,完成修復任務,回到B分支,合并C分支,刪除C分支。

然后,回到我們正在工作的A分支:

git checkout A

查看我們的工作現場:

git stash list

恢復工作現場?

git stash pop

此時會恢復并且刪除stash的內容。

不刪除stash內容?

git stash apply <指定stash,可以多次stash>

只執行恢復操作。

但是以后想刪除?

git stash drop

執行刪除stash內容的操作。

查看遠程分支

git remote
git remote -v

將會顯示更為詳細的信息。

分支多人協作

其他人從服務器clone你的項目的時候,他默認只能在本地看到master分支,但是想切換其他分支進行工作?

git checkout -b work1 orgin/work1

在本地創建和遠程對應的分支。

完成工作之后推送到服務器:

git push origin work1

此時其他人想要推送到work1就必須:

git pull

先拉取一下。

如果提示There is no tracking information for the current branch.

此時需要指定本地work1和遠程work1分支的連接關系:

git branch --set-upstream work1 origin/work1

然后再執行拉取操作。

拉取之后,可能會發生沖突,手動解決即可。

tag標簽的使用

tag標簽即為給commit操作產生的id值取的別名。

git tag <-s> v1.0 <-m "tag explain"> <commit id>

commit id 為空將會對應最新的commit。

-s秘鑰簽名標簽。

-m標簽說明。

查看標簽信息:

git taggit show v1.0

刪除標簽:

git tag -d v1.0

推送標簽:

git push origin v1.0

推送全部:

git push origin --tags

刪除推送了的標簽:

git tag -d v1.0git push origin :refs/tags/v1.0

忽略文件

強制添加存在.gitignore的文件

git add -f file.class

使用遠程倉庫

關聯遠程倉庫

git remote add origin git@github.com:mnnyang/reponame.git

添加后,遠程倉庫的名字就叫做origin, Git的默認叫法,也可以更改。

關聯之后,把本地的master分支所有內容推動到遠程庫上:

git push -u origin master

-u參數:

Git會把本地的master分支和遠程的master分支關聯起來,以后的推送和拉取就可以簡化命令。

搭建Git遠程服務器

  1. 首先肯定是要安裝了Git才行啊。

  2. 創建一個專門用于運行git服務的用戶:

    sudo adduser git
  3. 把需要登錄的用戶的id_rea.pub添加到

    /home/git/.ssh/authorized_keys 一行一個用戶,如果沒有該文件,手動創建即可。

  4. 選擇一個目錄作為倉庫,在該目錄下:

    sudo git init --bare sample.git

  5. 把倉庫擁有者改為git用戶:

    sudo chown -R git:git sample.git
  6. 禁止shell登錄,修改/etc/passwd

    git:......:/home/git:/usr/bin/git-shell
  7. 本地克隆使用了:

    git clone git@serverip:/srv/sample.git

GitHub

生成key

ssh-keygen -t rsa

測試連接

ssh -T git@github.com

刪除已關聯的遠程庫

git remote rm origin

可以關聯多個遠程庫

修改默認的遠程庫名稱origin即可。

自定義配置

命令別名

git config --global alias.st statusgit config --global alias.cm commitgit config --global alias.br branchgit config --global alias.ma 'push origin master'git config --global alias.unstage 'reset HEAD'git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

--global是針對當前用戶起作用。不加則只針對當前工作目錄。

配置文件在.git/config文件中。當前用戶的配置文件在home目錄的.gitconfig,可以直接修改文件。

  • 去官方網站學習更多:

     

git-scm

  • 1.公司登記注冊于2003年1月27日,清遠市桑達電子網絡媒體有限公司
    2.公司2006年起成為清遠市政府定點協議供貨商,電子采購供貨商
    3.公司2007年被清遠市相關政府部門評為安防行業狀元
    4.公司2007年起成為長城電腦清遠如意服務站(SP368)
    5.公司2007年承建清遠市橫河路口電子警察工程,開創清遠電子警察先河。
  • 6.公司2007年起成為IBM合作伙伴、公司2010年底成為金蝶軟件清遠金牌代理(伙伴編號:30030013)
    7.公司組團隊參加南方都市報組織的創富評選,獲廣東80強。公司申請多項軟件著作權、專利權
    8.2016年起公司成為粵東西北地區為數不多的雙軟企業,確立“讓軟件驅動世界,讓智能改變生活!"企業理想
    9.2016-01-29更名為廣東互動電子網絡媒體有限公司
    10.2021-01-13更名為廣東互動電子有限公司
  • 投資合作咨詢熱線電話:0763-3391888 3323588
  • 做一個負責任的百年企業! 天行健,君子以自強不息;地勢坤,君子以厚德載物;
    為用戶創造價值! 讓軟件驅動世界; 讓智能改變生活; 超越顧客期望,幫助顧客成功;
    對客戶負責,對員工負責,對企業命運負責!幫助支持公司的客戶成功;幫助忠誠于公司的員工成功!
  • 聯系電話:0763-3391888 3323588 3318977
    服務熱線:18023314222 QQ:529623964
  • 工作QQ:2501204690 商務QQ: 602045550
    投資及業務投訴QQ: 529623964
    微信:小米哥 微信號:qysed3391888
    騰訊微博:桑達網絡-基石與起點
  • E-MAIL:222#QYSED.CN ok3391888#163.com (請用@替換#)
在線客服
  • 系統集成咨詢
    點擊這里給我發消息
  • 網站\微信\軟件咨詢
    點擊這里給我發消息
  • 售后服務
    點擊這里給我發消息
  • 投資合作
    點擊這里給我發消息
久久精品国产91精品亚洲_欧美日韩性视频在线_欧美私人啪啪vps_亚洲精品乱码久久久久久按摩观_99热这里只有精品8_黑丝一区二区三区_国产美女精品免费电影_亚洲图片在线观看_久久不见久久见免费视频1_亚洲欧美在线免费观看_欧美一区二区私人影院日本_国产精品美女视频网站_一区二区三区精品国产_亚洲美女免费精品视频在线观看_国产午夜精品久久_久久国产精品久久久久久久久久
中文成人激情娱乐网| 亚洲国产老妈| 亚洲专区免费| 欧美精品九九| 国产一区二区中文| 国产欧美日韩麻豆91| 欧美一级在线播放| 国产亚洲精品一区二555| 老司机精品视频网站| 亚洲经典视频在线观看| 欧美激情视频在线免费观看 欧美视频免费一| 亚洲精品乱码视频| 欧美午夜精品一区二区三区| 欧美四级剧情无删版影片| 亚洲无亚洲人成网站77777| 欧美综合国产| 亚洲欧美激情一区| 亚洲国产美女精品久久久久∴| 欧美日韩国产综合网| 欧美日韩国产精品一区| 欧美与欧洲交xxxx免费观看| 欧美第一黄网免费网站| 激情久久五月天| 在线观看久久av| 在线一区免费观看| 欧美大片一区二区| 欧美—级高清免费播放| 亚洲欧美日韩天堂一区二区| 一区二区三区在线免费观看| 国产精品尤物福利片在线观看| 91久久精品美女高潮| 久久久久久电影| 日韩网站在线观看| 国产嫩草一区二区三区在线观看| 伊人成综合网伊人222| 亚洲女同同性videoxma| 亚洲伦理一区| 国产精品一二三视频| 国产一区二区三区在线播放免费观看| 久久久久久伊人| 亚洲青涩在线| 亚洲日韩第九十九页| 国产精品亚洲产品| 亚洲国产欧美在线人成| 国产免费成人av| 亚洲风情在线资源站| 一区二区三区高清在线观看| 日韩亚洲欧美在线观看| 国产精品久久久久毛片软件| 在线成人免费视频| 国产一区视频网站| 亚洲色图自拍| 免费亚洲电影在线| 国产精品久久久久久久久久免费| 国产日韩欧美一区二区| 国产精品黄色| 国产精品国产三级国产专播品爱网| 欧美日韩免费高清| 欧美一区二区在线视频| 亚洲日本va午夜在线影院| 久久女同精品一区二区| 久久久夜色精品亚洲| 国内精品久久久久影院薰衣草| 亚洲影院色无极综合| 亚洲小视频在线观看| 久久久久九九九| 亚洲第一二三四五区| 欧美精品三级在线观看| 亚洲人成网站999久久久综合| 久久高清福利视频| 国产精品久久久久久久久| 欧美日韩中文| 香蕉久久夜色| 欧美激情一二三区| 国产一区二区无遮挡| 伊大人香蕉综合8在线视| 国产欧美一区在线| 国产亚洲日本欧美韩国| 久久在线观看视频| 欧美日韩国内自拍| 欧美成人嫩草网站| 欧美午夜女人视频在线| 亚洲国产一区二区在线| 国产一区二区视频在线观看| 国产精品手机在线| 欧美色偷偷大香| 狠狠久久亚洲欧美专区| 国产精品私人影院| 中文无字幕一区二区三区| 99综合视频| 久久久久久国产精品mv| 91久久嫩草影院一区二区| 中文欧美在线视频| 亚洲一区二区三区四区在线观看| 另类综合日韩欧美亚洲| 国产精品第一页第二页第三页| 欧美日韩一区二区三| 国产日产欧美a一级在线| 欧美mv日韩mv国产网站| 亚洲一二三区在线观看| 亚洲在线一区二区| 日韩一区二区久久| 国产一区二区三区黄视频| 一区二区欧美日韩| 日韩一级大片| 久久在精品线影院精品国产| 国产精品久久999| 在线日韩成人| 亚洲精选中文字幕| 欧美成人高清| 国产喷白浆一区二区三区| 国产性做久久久久久| 欧美一级视频一区二区| 激情视频亚洲| 欧美午夜在线一二页| 欧美日韩三级| 欧美在线视频一区二区| 国产一区二区精品丝袜| 久久久精品动漫| 久久国产精品99国产精| 国产一区二区三区高清| 亚洲手机视频| 国产精品久久久久永久免费观看| 午夜久久久久久| 欧美在线免费视屏| 国产精品一区免费视频| 欧美日韩另类在线| 国产日韩欧美精品| 久久在线免费| 国产精品永久| 欧美日韩在线精品一区二区三区| 亚洲乱码国产乱码精品精98午夜| 欧美色精品在线视频| 激情小说亚洲一区| 你懂的亚洲视频| 国产精品免费区二区三区观看| 欧美精品一区二区在线播放| 亚洲网站视频福利| 国内自拍视频一区二区三区| 欧美大片免费观看| 国产精品影院在线观看| 久久久久久久久一区二区| 欧美日本亚洲韩国国产| 亚洲国产精品高清久久久| 亚洲黄网站在线观看| 亚洲摸下面视频| 亚洲国产视频一区| 久久综合福利| 亚洲伊人网站| 国产欧美日韩高清| 亚洲在线电影| 亚洲欧美视频在线观看| 你懂的国产精品永久在线| 在线观看日韩精品| 农夫在线精品视频免费观看| 在线观看日韩国产| 欧美福利电影在线观看| 精品成人一区二区三区四区| 麻豆91精品91久久久的内涵| 亚洲女同同性videoxma| 国产精品sm| 日韩视频一区二区在线观看| 欧美一区二区成人6969| 亚洲欧美国产高清va在线播|