GIT 与 VIM 相关问题和常用命令

一、git clone 出现 fatal: unable to access Failed to connect to github.com port 443: Timed out

如果其他设置和仓库网址都正常,可以试试
将 C:\Windows\System32\drivers\etc\hosts 清空

二、Auto packing deferred; not on AC

这种情况一般是因为本地git的dangling commit过多(dangling commit可以通过git merge来恢复)。则可以通过下面命令解决。

  1. git fsck --lost-found (查看dangling commit)
  2. git gc --prune=now

三、重写上一个提交的作者和邮箱

如果上一次提交时候的作者或者邮箱与预期不符,可以执行以下命令修改
git commit --amend --no-edit --author=“xxxxxx@xxx.com

四、git版本回滚到某一天

commitID=`git log --before “2020-3-16” -1 --pretty=format:“%H”`; git reset --hard $commitID

五、git修改远程仓库地址

  1. 修改命令
    git remote set-url origin [url]
    例如: git remote set-url origin https://github.com/xxx/xxx.git

  2. 先删后加
    git remote rm origin
    git remote add origin [url]

六、git stash 命令

  1. git stash save “save message” : 执行存储时,添加备注,直接 git stash则没有备注
  2. git stash list :查看stash的存储列表
  3. git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存储,后面加stash@{$num},比如第二个 git stash show stash@{1}
  4. git stash show -p : 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show stash@{$num} -p ,比如第二个:git stash show stash@{1} -p
  5. git stash apply :应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}
  6. git stash pop :命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}
  7. git stash drop stash@{KaTeX parse error: Expected 'EOF', got '}' at position 4: num}̲ :丢弃stash@{num}存储,从列表中删除这个存储
  8. git stash clear :删除所有缓存的stash

七、VIM 无限历史撤销

首先在 vimrc 中添加如下代码

set undofile

xxx.un~ 文件是用来存储当前xxx文件的所有撤销、重做记录的。u是撤销上一次操作,ctrl+r是重做下一次操作。但是问题时,每个文件都会创建一个 un~ 文件,那在不同目录下都会有这种类型的文件,看上去会让人非常心烦!

解决方法:把这些 xxx.un~ 统一放到一个专用目录中进行管理

在终端命令行创建目录

mkdir ~/.vim/undodir

再在 vimrc 中添加如下代码:

set undodir=~/.vim/undodir

这样所有文件的 un~ 撤销历史文件就都会保存在这个目录下。

八、linux替换目录下所有文件中的某字符串

替换当前目录及子目录下所有文件中的 “aaaa” 为 “bbbb”。

sed -i "s/aaaa/bbbb/g" `grep aaaa -rl ./`

九、git bash 对于中文文件名的支持

在使用 git bash 操作的时候,会发现中文名显示为多个字符编码而不是中文。
解决方法如下:

  • 1、在 git bash 终端输入以下命令:
    git config --global core.quotepath false
    
  • 2、git bash 设置中将文本格式设置为 zh_CN,UTF-8
    git bash 文本设置示意图
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HerbenLam

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值