手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表Tag:git

How to correct `git` reporting `detected dubious ownership in repository` without adding `safe.directory`

在部署项目的时候 。先git clone完项目后,再次使用git pull/git fetch的时候 ,就会报这个错误:

 
```
fatal: detected dubious ownership in repository at '/www/wwwroot/xxxcurrent'
To add an exception for this directory, call:
 
        git config --global --add safe.directory /www/wwwroot/xxx/current
 
```
如果不想动,直接 偷懒的话,就按上面的提示做就行了。找原因的时候 ,搜到了:https://stackoverflow.com/questions/73485958/how-to-correct-git-reporting-detected-dubious-ownership-in-repository-withou,但好象出问题的都是在wsl2下面。。
 
但我看下面的评论里有说:可能是因为拉代码的和实际提交的不是同一个人,所以会出现这个情况(https://github.blog/2022-04-18-highlights-from-git-2-36/#stricter-repository-ownership-checks.)官方也有介绍。
 
之前从来没遇到过,这个倒确实是在于,现在的git项目为了安全,提交的私钥和部署的不一样。所以在这个情况下,就可能会出现这样的问题了。
按提示加好就行了(偷懒的话,就 git config --global --add safe.directory '*' 就完事了)
 
 

Tags: git

备份:不使用ssh_config实现git指定私钥

这是一个备份,起因是由于我现在使用的gogs不能使用ssh的方式连接,主要是不方便,所以目前我是使用了HTTP的方式。

看了这篇文章后对我有启发,但是我没有使用,所以只是先做个备份。原文在:http://www.luxingmin.com/archives/278.html
XML/HTML代码
  1. 一直想实现指定git访问的私钥,网上资料给出来的都是通过ssh_config来实现,这种方法很繁琐,另外想实现git webhook部署时,使用这种方法也比较不灵活。  
  2.   
  3. 切入正题  
  4.   
  5. 建立git_ssh文件,内容如下  
  6.   
  7. #!/bin/bash  
  8. ssh -i $SSH_KEY_FILE $1 $2  
  9. 然后增加执行权限  
  10.   
  11. chmod 755 git_ssh  
  12. 然后就可以通过如下命令指定git访问时使用的ssh私钥  
  13.   
  14. SSH_KEY_FILE=/root/git/id_rsa GIT_SSH=/root/git/git_ssh git clone git@xxx  
---EOF---
 
 

Tags: ssh, git, gogs

git 如何同时提交到多个版本库?

如果你维护了多个git在线平台的版本库,你就会遇到,如何将一份代码在push的时候推到所有的版本库呢?

其实命令行就可以了:
XML/HTML代码
  1. git remote add origin git@git.xxxxx.com:gouki/code.git  
有几条就执行几次。最后:git push -u origin master即可。
 
参考:
  1. http://segmentfault.com/q/1010000000367632
  2. http://blog.codepiano.com/2013/07/03/push-multi-remote-repositories/
 
 

Tags: git

git 如何处理大文件加入版本库

 在使用git做为版本库的时候,遇到一个问题,那就是超大文件无法上传。git我不仅仅是拿来做代码的备份,甚至一些文档,我也拿它来处理,所以这些带有图片的文档就让我很郁闷了。它们可是都有着30M左右,甚至更大。怎么办?

其实很简单,在项目的.git/config里加入:

XML/HTML代码
  1. [pack]  
  2. threads = 1  
  3. deltaCacheSize = 128m  
  4. packSizeLimit = 128m  
  5. windowMemory = 128m  
  6. [core]  
  7. packedGitLimit = 128m  
  8. packedGitWindowSize = 128m  
如果这个大小你觉得还不够。你还可以更调大一点。这回就没大事喽。

Tags: git

mac下安装brew和git

自从升级到了ml,GIT无效了,我晕啊,怎么办?跑到code.google.com上面,却发现,居然只有snowleopard版的git,这可让人怎么办啊。
问群里,回复说直接:brew install git就完事了。有这么简单?
于是直接运行brew install git。告诉我Brew是不存在的问题。
google了一下,原来有一句简单的命令:

XML/HTML代码
  1. sudo su  
  2. curl -L http://github.com/mxcl/homebrew/tarball/master | tar xz --strip 1 -C /usr/local  

一下子就安装完了。。
然后brew install git :
bash-3.2# brew install git
Warning: It appears you have MacPorts or Fink installed.
Software installed with other package managers causes known problems for
Homebrew. If a formula fails to build, uninstall MacPorts/Fink and try again.
==> Downloading http://git-core.googlecode.com/files/git-1.7.11.4.tar.gz
######################################################################## 100.0%
==> make prefix=/usr/local/Cellar/git/1.7.11.4 CC=/Developer/usr/bin/llvm-gcc CFLAGS=-Os -w -pipe -march=core2 -msse4 -mmacosx-version-min=10.8 LDFLAGS=-L/usr/local/lib install
GIT_VERSION = 1.7.11.4
    * new build flags or prefix

。。。。。
Over

Tags: brew, git

Records:612