新建立了一个远程仓库,想着把项目放上去。于是在项目目录上: git init 然后就添加远程库 git remote add origin xxxx.git 然后就想push: git push -u origin master 结果提示错误: error:src refspec master does not match any 百度下,原来是说我本地没有提交任何东西,本地版本库为空, 空目录不能提交 (只进行了init, 没有add和commit)。 解决: 添加:git add -A 提交:git c
用Github有一两年了,是时候总结一下以前踩得坑了,这些坑开始时还真把自己摔得不轻!!!!! 小插曲:自己以前用hexo搭建的博客,每次写博客都要新建.md文件等初始化步骤,然后提交,有些繁琐,再加上自己又换了台电脑,又要部署hexo(虽然不需要重新部署),但还是有些步骤,索性用简书写,方便快捷些! git pull时ssh: Could not resolve hostname github.com: Name or service not known, fatal: Could not read
github上传时出现error: src refspec master does not match any解决办法
个人整理的一些常用的 Git 概念和命令集合,方便速查和快速解决某些场景下的问题,覆盖了日常开发和协同工作下的一部分场景,不只是命令行的介绍。欢迎关注语雀原文,持续更新!
Git 是一个分布式的版本控制工具,因此远程和本地可以视为两个独立的 Git 仓库。上图是一张经典的 Git 中的数据流与存储级别的介绍,其中储存级别主要包含几部分:
纵观全书,我们已经使用过一些诸如远程分支到本地引用的简单映射方式,但这种映射可以更复杂。 假设你添加了这样一个远程版本库:
执行代码: git clone ... 错误提示: Warning: Permanently added the RSA host key for IP address '192.30.252.129' to the list of known hosts. Permission denied (publickey). fatal: Could not read from remote repository. 解决方法: 这种一般是SSH链接配置没有设置好。可以参考Hunter博客的《Github之SSH连接配置》,里面的图文很详细,可以直接按照步骤进行设置。
引起该错误的原因是,目录中没有文件,空目录是不能提交上去的,而且在push之前至少有过一次commit
在 https://git-scm.com/download/win 下载 gitbash 并安装即可
显式引用和隐式引用用来指代每一次提交。尽管有时两种引用都不方便,但是幸运的是, Git 提供了许多不同的机制来为提交命名,这些机制有各自的优势,需要根据上下文来选择。
在github上git clone一个项目,在里面创建一个目录,然后git push的时候,出现报错"Everything up-to-date"
如果 git merge 合并的时候出现 refusing to merge unrelated histories 的错误,原因是两个仓库不同而导致的,需要在后面加上--allow-unrelated-histories进行允许合并,即可解决问题
错误展示: error:spawn failed... fatal: cannot lock ref 'HEAD': unable to resolve reference HEAD: Invalid argument error: src refspec error: src refspec HEAD does not match any.
在使用 Git 的时候,虽然大部分时候我们用的是图形客户端,但图形客户端不能解决所有的操作,所以,也少不了要需要使用命令行的时候。
如果只想用gitbook制作自己的电子书,本地观看,那只需要安装gitbook即可。现在是想部署在github。
版本控制(Version control)是维护项目的标准作法,能追踪项目从诞生一直到定案的过程。此外,版本控制也是一种软件工程技巧,借此能在软件开发的过程中,确保由不同人所编辑的同一程序文件都得到同步,记录项目内各个模块的改动历程,并为每次改动都编上序号。
关联本地和远程仓库 1.安装git 先安装homebrew,然后通过homebrew安装git。 git中clone项目有两种方式:https和ssh https:不管是谁,拿到url随便clone,但是在push的时候需要验证用户名和密码。 ssh:clone项目你必须是拥有者或者管理员,而且需要在clone前添加SSH Key。SSH在push的时候,是不需要输入用户名的,如果配置SSH Key的时候设置了密码,则需要输入密码,否则是不需要输入密码的。 git中使用SSH Key的步骤: 1.检查电脑是
裸版本库就是不含有工作区的版本库,而我们平常开发的代码库都是开发版本库,修改工作区,然后进行提交、推送提交等操作。 可以使用git init --bare命令创建一个裸版本库。裸版本库一般作为服务器上的版本库。
遇到的问题 在小程序开发过程中,代码提交突然变成了一件非常头疼的事情。因为小程序的开发、编译、预览到最后的上传发布过程中,任何一步其实都和 Git 没有任何关系。 所以之前自己一个人开发的时候,经常性的就忘记了 commit 代码,亦或是 commit 了但是没有对远端进行 push 操作。一个人开发的时候还好,多个人开发的时候再是这种操作习惯可就要把人坑惨了。 另外还有一个问题是,小程序的发布对 Git 没有强相关,所以对代码分支的要求不高。一般说来,日常的 Web 开发中,我们都是在 dev 或者 f
git基本组成框架:Workspace、Index / Stage、Repository、Remote
很多读者看了《从9G到0.3G,腾讯会议对他们的git库做了什么?》之后,希望鹅厂程序员们分享更多 git 操作技巧。”git坑太多了“、”在工作中我经常遇到这个情况:忙了一天准备提交代码下班,结果 git 合并冲突把刚写好的代码覆盖掉了,血压飙升!““合并前文件还在的,合并后就不见了”,“我遇到 git 合并的 bug 了” ——这是程序员高频遇到的场景。鹅厂毕鸣一如何攻破这个 git 使用时的痛点?欢迎继续阅读。
由于被绿太狠了,心情不太好就开始了骚操作坑队友!common => COMMON结果如下:
出现这个问题的原因是其他人修改了index.html和src/request/api.js这两个文件并提交到版本库中去了,而你本地也修改了index.html和src/request/api.js,这时候你进行git pull操作就好出现冲突了,解决方法,在上面的提示中也说的很明确
有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目。 也许是第三方库,或者你独立开发的,用于多个父项目的库。 现在问题来了:你想要把它们当做两个独立的项目,同时又想在一个项目中使用另一个。
由于ubuntu14.04.1默认的openssh是5.6p1版的,有很多安全漏洞,所以计划升级至openssh7.5p1 一、下载升级所需的软件 zlib-1.2.11.tar.gz openssh-7.5p1.tar.gz openssl-1.0.2l.tar.gz
本地电脑安装git。可通过 git --version 查看版本,确保本机已有git。
Git在执行提交的时候,不是直接将工作树的状态保存到数据库,而是将设置在中间索引区域的状态保存到数据库。因此,要提交文件,首先需要把文件加入到索引区域中。
git作为一个vcs(version control system),是越用越香,那么还有哪些比较香的地方呢!?
集中化的版本控制系统诸如 CVS,svn 以及 Perforce 等,都有一个单一的集 中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到 这台服务器,取出最新的文件或者提交更新。多年以来,这已成为版本控制系统的 标准做法
上图标红就是相关的工程化配置,有 Linter、Tests,Github Actions 等,覆盖开发、测试、发布的整个流程。
本地的 master 和远程分支 origin/master 是关联起来的,origin/master 就对应着远程仓库的 master分支
首先,当你读到这篇文章的时候,可能已经进入到这个需求的场景了,但笔者还是想构建一个常见的业务场景,以希望读者能够更快的进入到这个问题背景中:
很多人都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了。
CI/CD 同 DevOps、Agile、Scrum、Kanban、自动化以及其他术语一样,是一个一起被经常提及的专用术语。有时候,它被当做工作流的一部分,但是并没有搞清楚这是什么或者为什么它会被采用。对于年轻的 DevOps 工程师来说,使用 CI/CD 理所当然已经成为了常态,可能他们并没有看到“传统”的软件发布流程而因此不欣赏 CI/CD。
产生400报错的原因是es7做了熔断优化,当jvm内存使用超过阈值,为了避免丑陋的oom,会直接限流并抛出EsRejectedExecutionException。
任何时候,如果你需要帮助来记住特定命令的选项,你可以使用 git command -help:
而此时由于项目会把主题文件上传到Github,造成key值泄漏,于是我们需要采取一个方法,使得项目为Public,但key值是公开的。 于是查找资料,在设置-安全中心中有一个Web安全域名,将我们的博客域名添加进去,这个时候即使别人拿到key值也是不可以使用的了. 也因此找到之前博客评论、文章统计缺失的原因:之前博客域名为https://liugezhou.online,而由于博客不再使用此域名维护后,改为了liugezhou.github.io的域名,安全设置导致统计消失。
Git 是优秀的分布式代码管理软件。但是俗话说,“无规矩不成方圆”,代码分支的管理规范没有制定好,就会带来一系列的问题,比如:
这里记录本人使用 Git 的点滴,以需要完成的功能为切入点来讲解需要使用的命令,供大家参考。当然,再结合官方文档 Git Reference 及 Git 常用命令大全这类较全面的 Git 命令介绍的文章,能帮助我们更好地掌握 Git 的使用。
到目前位置我们一直在编写单文件代码,只有一个 main.go 文件。本节我们要开始朝完整的项目结构迈进,需要使用 Go 语言的模块管理功能来组织很多的代码文件。
检出某次commit提交, 如果当前分支上的某次提交的修改正是当前需要的,那么可以使用此命令进行操作。
最近geekzl打算尝试一下VuePress,据说如果用来做文档体验会很不错,外观和Gitbook有点相似,好处是代码层面具有较大的自由度,也可以顺便加强vue的学习。
git commit -a 将所有跟踪过的文件提交。已跟踪的文件是指添加到暂存区并修改过的文件,新添加但并未添加到暂存区的文件不会被提交。
列车时刻表的概念来自早年我参与的一个英国项目,我们使用 TRAC 管理项目,这是一个古老的项目管理软件,他是很多现代项目管理软件的雏形,很多思想沿用至今,甚至无法超越它,由于他是 Python 开发,框架古老,后期无人维护更新跟不上时代节奏。另一个项目模仿它90%的功能叫 Redmine,Redmine 红极一时,但是仍然没有统一江湖。直到 Github/Gitlab 出现,一站式解决了软件项目管理中遇到的各种刚需问题,TRAC,Redmine,Confluence,Bugzilla,Jira, Mantis, BugFree, BugZero…… 慢慢淡出人们视野。
git 通过保存一系列不同时刻的快照,来记录文件在不同时刻的差异。git 的分支,本质上是指向提交对象的可变指针。git 的默认分支名是 master。在多次提交操作之后,你其实已经有一个指向最后那个提交对象的 master 分支。 master 分支会在每次提交时自动向前移动。
PyTorch1.3以后添加了对移动端的支持,我曾尝试过将模型转入移动端,花了很多功夫,把检测+识别的所有代码都转成TorchScript之后,放到移动端运行,却发现在移动端的推理速度比PC慢了好几倍,不得不放弃这个方案。
设置和配置 git config help 获取和创建项目 init clone 基本快照 add status diff commit reset rm mv 分支和合并 branch checkout merge mergetool log stash tag worktree 共享和更新项目 fetch pull push remote submodule 检查和比较 show log diff shortlog describe 修补 apply cherry-pick diff rebase revert 调试 bisect blame grep
Gitlab 是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的 Git 项目仓库,可通过Web 界面进行访问公开的或者私人的项目 Gitlab 拥有与 Github 类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,他非常易于浏览提交过的版本并提供一个文件历史库。他还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找
领取专属 10元无门槛券
手把手带您无忧上云