欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Git如何清除本地緩存

 更新時間:2023年05月26日 09:10:31   作者:lishentao_1122  
這篇文章主要介紹了Git如何清除本地緩存問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Git清除本地緩存

工作中遇到了令我頭痛的是Gitlab遠程倉庫中初始化倉庫時,提交了.idea文件,導(dǎo)致我clone下來代碼后,idea導(dǎo)入.idea文件改變,

在以后的提交過程中都需要合并.idea文件中的xml文件,很麻煩,所以添加.gitignore文件輸入.idea/意思是忽略掉.idea/文件下的所有文件。

但是都是失敗,因為第一次clone的時候,本地與遠程的.idea文件已經(jīng)建立了track,所以只有清除本地的localcache并且清除遠程倉庫中的.idea文件夾,執(zhí)行命令如下:

1、git rm -r --cached .idea/

2、git add .

3、git commit -m 'delete .idea'

4、git push -u origin master -f    //強制提交

5、編寫.gitignore文件,并把所有忽略提交的文件都寫入提交

windows 清除Git緩存

Windows 域賬號的密碼,或者git賬號的密碼修改之后,Git-Bash 中不能clone,提示認證失敗。原因是Windows緩存了git賬號密碼。

先來看一下原理

緩存有幾種,可以通過命令git config credential.helper或者用戶目錄下的.gitconfig文件查看是哪種緩存方式。

  • 一般默認是使用wincerd,也就是windows憑證。配置命令#git config --global credential.helper wincerd
  • 還可以配置保存到 .git-credentials文件,配置命令#git config --global credential.helper store
  • 還可以直接配置賬號密碼

清楚了緩存的方式,我們就可以有針對性的清除緩存。比如你的緩存方式是store,也就是保存到文件,那么你清除windows 憑據(jù)緩存就沒有用了。其它同理。

清除緩存

第一種情況:

當使用.git-credentials文件緩存方式時,當git clone認證失敗一次,會自動清除掉對應(yīng)的緩存。然后再執(zhí)行g(shù)it clone會提示輸新的賬號密碼。如果不行可以手動到文件中刪除。

之后再執(zhí)行clone或者pull時先提示輸入用戶名,然后提示輸入密碼,注意,這里的密碼輸入框有問題,要先把密碼輸入到一個文本然后再復(fù)制粘貼過去,否則會一直提示你認證失敗

第二種情況:

當使用wincred方式時應(yīng)該清理windows憑據(jù)緩存,方法如下

Windows清理憑據(jù)緩存

執(zhí)行下面的命令 

這個操作受限于權(quán)限,在域管理的情況下你可能沒有這個權(quán)限

#git credential-manager uninstall

這種情況還有一種清理方式 

同樣,這個操作受限于權(quán)限,在域管理的情況下你可能沒有這個權(quán)限

控制面板\用戶帳戶\憑據(jù)管理器

刪除對應(yīng)版本庫的用戶名密碼

如果使用的是wincred方式,又沒有權(quán)限清理windows憑據(jù)緩存時怎么辦呢?

使用如下命令,清除git緩存設(shè)置

#git config --system --unset credential.helper

清除之后,每次執(zhí)行g(shù)it clone都會讓你輸入賬號密碼。注意這里有個大坑,輸入密碼的輸入框有問題,當你密碼比較長時可能導(dǎo)致密碼混亂,驗證失敗。這種情況可以先將密碼寫到某個文件中,然后復(fù)制粘貼過來。

第三種情況:

將賬號配置在git url中,執(zhí)行命令后會提示要求輸入密碼,正常輸入即可。

git clone https://username@bitbucket.xxx.com/bitbucket/scm/repo.git

下面是具體問題的例子

jenkins配置git url 如下:

https://bitbucket.xxx.com/bitbucket/scm/repo.git

構(gòu)建報錯

在jenkins slave上直接執(zhí)行g(shù)it clone命令也一樣的錯誤。而且不提示輸入用戶名密碼,直接報賬號被鎖定。

如果給git的url執(zhí)行賬號則沒有問題,如下寫法: https://username@bitbucket.xxx.com/bitbucket/scm/repo.git

初步分析,是由于git緩存了賬號信息,在不指定賬號的時候使用默認的賬號去執(zhí)行pull操作。所以沿著清緩存的方向找到一篇文章(見截圖):

按照文章中的說法,執(zhí)行了清緩存的命令,問題解決:

#git credential-manager uninstall

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論