随笔分类 - Git
分布式版本控制系统
摘要:比如有两个开发了比较多功能的分支,或者在比较久的一次提交上做了一个hotfix,这个时候如果合并,通过ui查看会有一条额外的很长的线连接过来,不美观,看起来也不方便。 可以用rebase进行变基,强行把两个分支的内容合并到一起。 rebase与merge的区别 merge就是把两个分支,当前的内容,
阅读全文
摘要:git cherry-pick时,如果指定的是一个合并结点,会报这个错误,因为git也不知道你想要合并过来哪些内容,需要指定`-m`参数,告诉git合并多少。 这个参数从1开始,向下排序,正常我们指向cherry-pick一个,所以写成`git cherry-pick xxx -m 1`即可。
阅读全文
摘要:有两个仓库old和new,要把old仓库的内容推送到new仓库 删除old仓库的remote信息 git remote remove origin 增加new仓库的remote信息 git remote add origin xxx 把当前的分支推动到新仓库远程分支,并建立连接 git push -
阅读全文
摘要:有时候git仓库下因为编译等原因多了很多文件,但是并没有放到git仓库,我们也不需要,git提醒未提交,用git add添加。如果我们想批量清理掉这些文件可以使用git clean git clean -fd 可以查看git clean的help,参数不多,f是强制删除,d是删除文件夹
阅读全文
摘要:线上版本稳定后,需要在git仓库打标签,方便后续更新维护追溯。 git tag实际上也是和branch一样的,对所有存储数据的一个快照(快照的具体意思可以查一下资料,就是一堆数据快的索引列表,方便定位到所有数据快,把其串起来,还原成原来的样子)。 git tag的使用也和branch基本一样,创建t
阅读全文
摘要:git push origin 本地分支名:远程分支名 如果不加冒号,直接是git push origin 分支名会把对应分支直接推送到远程,创建一个同名分支 如果什么都不加,git push会把当前分支推送到默认关联的远程分支 如果不加本地分支,git push origin :远程分支名会推送一
阅读全文
摘要:git rev-parse --abbrev-ref HEAD git rev-parse HEAD
阅读全文
摘要:git回退之git reset 一定要注意,这个操作会删除所有记录,并无备份。具体详情参考上面的文章 如果我们git merge后发现merge错了,或者仅仅想撤销刚才的操作,可以使用git reset --hard HEAD~。 如果git rebase之后,不想要原来的操作,那么也可以进行回退,
阅读全文
摘要:许久之前的一次提交,如果突然调查历史记录的时候发现日志写的不尽如意,想要重新编写一下,git是可以做到的,但是不太建议 #步骤 git rebase -i xxx这个是你要修改的提交的前一个提交哈希值,因为git rebase会切换到你指定的哈希值的后一次提交,如果你指定你想提交的哈希值,那么就会在
阅读全文
摘要:原来项目是svn,对于频繁的修改开发不方便,准备改成git 使用git svn进行转换 git svn clone xxx --no-metadata --no-minimize-url 指定目录 --no-metadata 这个可以加,也可以不加,应该是在clone的时候,有一些数据不clone,
阅读全文
摘要:编辑.git/config文件 增加 [credential] helper = store 重新拉取一下代码,输入用户名密码,下一次就会记住了
阅读全文
摘要:如果我们提交了几次代码,实际上是同一个功能,或者说就是想把多次提交再合并成一次提交,减少提交日志的混乱,可以用git rebase -i xxx,xxx是你想合并的分支的前一个,也就是xxx分支是不参与这次合并。 注意事项 建议合并的分支中间没有其他提交,不然有可能有冲突,解决起来非常麻烦 建议合并
阅读全文
摘要:git clone http的仓库时,报错 error: The requested URL returned error: 401 Unauthorized while accessing http://xxx 这是因为git版本太老,需要升级
阅读全文
摘要:https://blog.csdn.net/sinat_42483341/article/details/121108774 https://www.cnblogs.com/ice-image/p/15420411.html https://confluence.atlassian.com/bitb
阅读全文
摘要:https://www.cnblogs.com/daodaotest/p/13841951.html #!/bin/sh git filter-branch --env-filter ' # 之前的邮箱 OLD_EMAIL="aaa@aaa.com" # 修改后的用户名 CORRECT_NAME="
阅读全文
摘要:git commit --amend 重新提交,更改提交日志
阅读全文
摘要:有时候在clone比较大的工程时,因为一些配置限制,可能会导致报错,如下 warning: inexact rename detection was skipped due to too many files. warning: you may want to set your diff.renam
阅读全文
摘要:比如我们重装系统了,该系统是原来的管理员,那么就需要重新创建公钥私钥,并且需要替换服务器上的gitolite的密钥。做法就是: 在当前系统生成密钥 ssh-keygen -t rsa 把公钥放到服务器 scp .ssh/id_rsa.pub root@192.168.1.123:~/new.pub
阅读全文
摘要:这是由于设置了代理,现在代理不可用了,可以运行下面的语句查看一下 git config --global --unset http.proxy 设置代理参考 解决github
阅读全文
摘要:注意不可以在远程分支前加origin,不然会报错。如下是错误写法
阅读全文