原文:https://blog.csdn.net/xyznol/article/details/51261692 git运行突然提示 Auto packing the repository in background for optimum performance 查资料,原来是自己本地一些 “悬空对象”太多(git删除分支或者清空stash的时候,这些其实还没有真正删除,成为悬空对象,我们可以使用merge命令可以从中恢复一些文件) 解决: 1.输入命令:git fsck --lost-found,可以看到好多“dangling commit”。 2.清空他们:git gc --prune=now,完成。 我们的生命被琐碎消耗至尽。 ──亨利·戴维·梭罗《瓦尔登湖》

Continue reading

原文:https://www.cnblogs.com/kevingrace/p/5896706.html 使用下面的关系区别这两个操作: git pull = git fetch + git merge git pull --rebase = git fetch + git rebase 现在来看看git merge和git rebase的区别。 假设有3次提交A,B,C。 在远程分支origin的基础上创建一个名为”mywork”的分支并提交了,同时有其他人在”origin”上做了一些修改并提交了。 其实这个时候E不应该提交,因为提交后会发生冲突。如何解决这些冲突呢?有以下两种方法: git merge 用git pull命令把”origin”分支上的修改pull下来与本地提交合并(merge)成版本M,但这样会形成图中的菱形,让人很困惑。 git rebase 创建一个新的提交R,R的文件内容和上面M的一样,但我们将E提交废除,当它不存在(图中用虚线表示)。由于这种删除,小李不应该push其他的repository.rebase的好处是避免了菱形的产生,保持提交曲线为直线,让大家易于理解。 在rebase的过程中,有时也会有conflict,这时Git会停止rebase并让用户去解决冲突,解决完冲突后,用git add命令去更新这些内容,然后不用执行git-commit,直接执行git rebase –continue,这样git会继续apply余下的补丁。 在任何时候,都可以用git rebase –abort参数来终止rebase的行动,并且mywork分支会回到rebase开始前的状态。 不能忍受无聊的一代人,将是平庸的一代人。不能忍耐无聊,生活就会变成持续的对无聊的逃离。──罗素(Rusell)

Continue reading

以下两步缺一不可 步骤一 从GitHub下载文件一直非常慢,查看下载链接发现最终被指向了Amazon的服务器,下载地址是http://github-cloud.s3.amazonaws.com/,从国内访问Amazon非常慢,所以总是下载失败,解决方法时更改host文件,使该域名指向香港的服务器: 更改hosts文件: Windows 更改C:\Windows\System32\drivers\etc\hosts文件,在文件中追加219.76.4.4 github-cloud.s3.amazonaws.com, 将域名指向该IP即可 Mac 执行 sudo vi /etc/hosts 追加 219.76.4.4 github-cloud.s3.amazonaws.com 最后执行ipconfig /flushdns命令,刷新 DNS 缓存。 步骤二 https://www.ipaddress.com/ 使用 IP Lookup 工具获得下面这两个github域名的ip地址,该网站可能需要梯子,输入上述域名后,分别获得github.com和github.global.ssl.fastly.net对应的ip,比如 192.30.xx.xx 和 151.101.xx.xx 。准备工作做完之后,打开的hosts文件中添加如下格式,IP修改为自己查询到的IP: 192.30.xx.xx github.com 151.101.xx.xx github.global.ssl.fastly.net 最后执行ipconfig /flushdns命令,刷新 DNS 缓存。修改后的下载速度能达到 2MB/S 以上。 参考自:https://blog.csdn.net/qing666888/article/details/79123742

Continue reading

原文:https://blog.csdn.net/shuilengqingqiu/article/details/77945658 git提交代码时出现错误:error : unpack failed : error Missing commit XXX,XXX代表提交的版本号。 原因:本地索引出错。 解决方法: git gc git pull –rebase(执行之前要先把本地的修改stash 或者commit。过程中遇到冲突需要先解决冲突,再git add .) git push

Continue reading

[VersionControl]git Reset Type

概述 Reset Type有三种类型:Soft、Mixed、Hard。 理解Reset Type之前,先解释下以下术语: HEAD 这是当前分支版本顶端的别名,也就是在当前分支你最近的一个提交 Index Index也被称为staging area,是指一整套即将被下一个提交的文件集合。他也是将成为HEAD的父亲的那个commit Working Directory 代表你正在工作的那个文件集,又称作Working Tree。 三个Reset级别的意思分别是: Soft # 还原 HEAD Mixed # 还原 HEAD、Index # 默认参数 Hard # 还原 HEAD、Index、Working Directory 应用 如果本地有commit,但是没有push,此时想把这个commit 回退掉,则:右键需要回退的SHA-1 -》 Reset “master” to this。 然后和弹出菜单: 选择合适的Reset Type,点击OK。 注意事项: 根据需要选择Reset Type: 若本地无修改,那么就选择 Soft; 若本地有修改未commit,那么就选择 Mixed; 若本地有修改且已commit,那么就选择 Hard; 参考自:git reset soft,hard,mixed之区别深解 https://www.cnblogs.com/kidsitcn/p/4513297.html 生命的价值不在于时间的长短,而在于你如何利用它。

Continue reading

区别: HEAD: The current ref that you’re looking at. In most cases it’s probably refs/heads/master FETCH_HEAD: The SHAs of branch/remote heads that were updated during the last git fetch ORIG_HEAD: When doing a merge, this is the SHA of the branch you’re merging into. MERGE_HEAD: When doing a merge, this is the SHA of the branch you’re merging from. CHERRY_PICK_HEAD: When doing a cherry-pick, this is the SHA of the commit which you are cherry-picking.

Continue reading

Author's picture

Neil Wang

久长唯有品格

To Be Marvelous

Yichang·Hubei