git
文章平均质量分 74
幽雨雨幽
C/C++软件工程师
展开
-
使用GitLab CI和Docker进行容器应用自动化部署
容器 Docker 越来越受开发者和运维人员的喜爱,更是作为实践 DevOps 的一个中要工具。同时 Gitlab 提供了免费的代码管理服务,其 gitlab-ci 更是提供了强大的自动化 CI/CD 流程功能。本文以一个静态站点的示例来说明如何使用 gitlab-ci 和 docker 进行容器镜像的构建,以及如何将镜像自动化部署到目标服务器上。如果你想和更多Docker技术专家交流,可以加我微信liyingjiese,备注『加群』。群里每周都有全球各大公司的最佳实践以及行业最新动态。编写Docke转载 2021-05-31 10:59:49 · 1877 阅读 · 0 评论 -
Unable to create '/media/sf_nginx/H2_20151103/H2/.git/index.lock': File exists.
今天不知怎么回事,git 突然不能add修改文件,错误信息如下,但是很奇怪的是git status 没有问题,依然正常工作[root@test01 test_code_driver]# git add test_prefix.hfatal: Unable to create '/media/sf_nginx/H2_20151103/H2/.git/index.lock': File exi原创 2015-11-19 14:13:07 · 815 阅读 · 0 评论 -
git删除本地仓库
现在本机上有个本地仓库:[root@test01 H2_20151112]# cd H2/[root@test01 H2]# git branch* develop执行git init命令[root@test01 H2_20151112]# git initReinitialized existing Git repository in /media/sf_原创 2015-11-26 14:52:52 · 44062 阅读 · 0 评论 -
Linux 下安装和配置git
Linux 版本:Centos系统1. 安装gitsudo yum install git2. 设置Git(1)设置用户名和email。git config --global user.name "Your Name"git config --global user.email "[email protected]"此时,Home目录下会新建一个.gitc...原创 2015-12-25 16:54:55 · 510 阅读 · 0 评论 -
git查看某个文件的修改历史
在开发过程中,看到某些文件改动了,但不清楚这个改动的作者和原因,也不知道对应的BUG号,也就是说无从查到这些改动的具体原因了~【注】:某个文件的改动是有限次的,而且每次代码修改的提交都会有commit描述,我们可以从这里进行入手;一、切换到目录首先切换到要查看的文件所在的目录:[root@test01 hdt_adengine_select]# cd select_原创 2016-02-17 10:05:26 · 19569 阅读 · 0 评论 -
git 常用命令
git 配置文件git的配置文件位置针对所有用户:/etc/gitconfig针对当前用户: ~/.gitconfig查看配置的方法git config --list修改配置的方法git config --global user.name "wangyubin" (修改的是~/.gitconfig)git config --system user.n转载 2016-02-26 10:11:58 · 569 阅读 · 0 评论 -
创建标签
在Git中打标签非常简单,首先,切换到需要打标签的分支上:$ git branch* dev master$ git checkout masterSwitched to branch 'master'然后,敲命令git tag 就可以打一个新标签:$ git tag v1.0可以用命令git tag查看所有标签:$ git tagv1.0默认转载 2017-03-01 18:08:47 · 415 阅读 · 0 评论 -
ssh 远程登录不用密码 ssh-keygen -t rsa
使用 git pull 更新项目的时候,发现还要输入password,输了几次也不知道输哪个了,就想怎么不用输入密码,设置Git的user name和email:$ git config --global user.name "test.name"$ git config --global user.email "test.name@email"2.生成密钥...原创 2015-07-27 14:31:29 · 8219 阅读 · 0 评论 -
Windows下给SourceTree配置外部比较工具BeyondCompare
摘要 windows中使用SourceTree管理代码时候经常会遇到合并代码,未免会遇到代码冲突的情况,这个时候就需要手动处理冲突的部分,本文简单说一下配置beyondCompare的方法。开始之前默认你windows电脑上已经安装了git以及SourceTree了,下面直接开始:注:这里本人使用的是中文版,英文版的同理可得。第一步、在SourceTree里面的工具转载 2015-03-16 10:28:28 · 14441 阅读 · 0 评论 -
git diff old mode 100644 new mode 100755
今天执行git diff filename ,出现 old mode 100644 new mode 100755 的提示,如下图:但是发现文件内容并没有发生改变想起来中间执行过chmod 的操作,产生这个问题的原因就是:filemode的变化,文件chmod后其文件某些位是改变了的,如果严格的比较原文件和chmod后的文件,两者是有区别的,但是源代码通常只关心文本内容,因此chmod产生的变...原创 2018-03-20 17:29:17 · 31937 阅读 · 10 评论 -
error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function.
在执行git clone 时root@cdndev08:/media/share/webrtc-checkout# git clone https://chromium.googlesource.com/chromium/tools/depot_tools.gitCloning into 'depot_tools'...remote: Sending approximately 19.44 M...原创 2018-06-15 17:26:05 · 18808 阅读 · 9 评论 -
Unknown SSL protocol error in connection to xxx:443
使用git从远程下载时,出现Unknown SSL protocol error in connection to xxx:443 错误。很有可能是被墙在了外面,这里针对墙在外面的情况。设置代理服务器:第一种方法:在.gitconfig加上http.proxy=127.0.0.1:8087http.sslVerify=false第二种方法:直接在命令行敲git config --global ht...转载 2018-06-26 17:25:51 · 11974 阅读 · 3 评论 -
gitlab project项目迁移
一、gitlab迁移需求由于集团要求,需要把子公司gitlab仓库迁移到集团的gitlab仓库子公司gitlab地址:git.aaa.com,集团gitlab地址:git.bbb.net二、gitlab迁移步骤1、查看目前子公司gitlab地址luoxuejun-d1:360-fang yanmin$ git remote -vorigin [email protected]:36...转载 2018-11-01 14:12:35 · 8274 阅读 · 0 评论 -
去除git mergetool不产生*.orig文件
使用git mergetool合并分支时,总会产生以*.orig为扩展名的备份文件, 为了解决这个问题,执行:git config --global mergetool.keepBackup false或者直修改.gitconfig文件[mergetool]prompt = truekeepBackup = false...原创 2019-04-26 17:02:13 · 1001 阅读 · 0 评论 -
Git submodule子模块
1. 子模块的添加git submodule add <url> <path>其中,url为子模块的路径,path为该子模块存储的目录路径。比如:git submodule add https://github.com/openresty/echo-nginx-module.git external/echo-nginx-module执行成功后,g...原创 2019-07-03 18:54:56 · 1139 阅读 · 0 评论 -
git 删除文件夹
1. 查看本地已经被删除的文件2. 删除 文件夹以及文件夹下的文件[root@test01 h2_mopub_replace]# git rm ../test_code_driver -r3. [root@test01 h2_mopub_replace]# git commit -m "调整框架"4. 同步到远程分支[root@tes原创 2015-08-13 14:37:12 · 955 阅读 · 0 评论 -
git 配色方法
从SVN转到git,文件差异对比黑白屏各种看起来不爽,所以自己鼓捣了下git的颜色配置1. SecureCRT 终端颜色配置选项-会话选项-终端-仿真,选择ANSI 颜色,再选择“使用颜色方案”,如下图:注意点:点击确定后一定要重启SecureCRT终端,我刚开始配置完SecureCRT颜色配置后没有重启SecureCRT终端,导致后面对git的配置都不生效,自己花了点时间才发现竟原创 2015-05-14 17:00:04 · 2198 阅读 · 0 评论 -
../configure: /bin/sh^M: bad interpreter: No such file or directory
今天在Linux下运行./l-c, 谁知道竟然报出 ../configure: /bin/sh^M: bad interpreter: No such file or directory , 这个问题。我用git命令拉的代码,上周是可以执行./l-c的。后来查了下原因,原来是不同系统的编码格式引起的。 网上分析认为此文件是在window下写的,所以在每行后面会加个ctrl+m原创 2015-04-29 10:17:51 · 1718 阅读 · 2 评论 -
分支管理---解决冲突
人生不如意之事十之八九,合并分支往往也不是一帆风顺的。准备新的feature1分支,继续我们的新分支开发:$ git checkout -b feature1Switched to a new branch 'feature1'修改readme.txt最后一行,改为:Creating a new branch is quick AND simple.在feat转载 2015-02-28 16:29:55 · 526 阅读 · 0 评论 -
远程仓库---从远程库克隆
上次我们讲了先有本地库,后有远程库的时候,如何关联远程库。现在,假设我们从零开发,那么最好的方式是先创建远程库,然后,从远程库克隆。首先,登陆GitHub,创建一个新的仓库,名字叫gitskills:我们勾选Initialize this repository with a README,这样GitHub会自动为我们创建一个README.md文件。创建完毕后,可以看转载 2015-02-28 15:18:54 · 663 阅读 · 0 评论 -
分支管理---创建与合并分支
在版本回退里,你已经知道,每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能转载 2015-02-28 15:59:48 · 489 阅读 · 0 评论 -
时光机穿梭---撤销修改
自然,你是不会犯错的。不过现在是凌晨两点,你正在赶一份工作报告,你在readme.txt中添加了一行:$ cat readme.txtGit is a distributed version control system.Git is free software distributed under the GPL.Git has a mutable index called stage.转载 2015-02-27 17:10:06 · 543 阅读 · 0 评论 -
分支管理
分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN。如果两个平行宇宙互不干扰,那对现在的你也没啥影响。不过,在某个时间点,两个平行宇宙合并了,结果,你既学会了Git又学会了SVN!分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导转载 2015-02-28 15:23:11 · 553 阅读 · 0 评论 -
集中式vs分布式
Linus一直痛恨的CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统,集中式和分布式版本控制系统有什么区别呢?先说集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改转载 2015-02-27 14:29:40 · 573 阅读 · 0 评论 -
时光机穿梭---删除文件
在Git中,删除也是一个修改操作,我们实战一下,先添加一个新文件test.txt到Git并且提交:$ git add test.txt$ git commit -m "add test.txt"[master 94cdc44] add test.txt 1 file changed, 1 insertion(+) create mode 100644 test.txt一般情况转载 2015-02-27 17:25:26 · 560 阅读 · 0 评论 -
创建版本库
什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录:$ mkdir learngit$ cd learngit$ pwd/Users转载 2015-02-27 15:29:01 · 542 阅读 · 0 评论 -
时光机穿梭---工作区和暂存区
Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。先来看名词解释。工作区(Working Directory):就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区:版本库(Repository):工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。Git的版本库里存了很多东西,其中最重要的就是称为stage转载 2015-02-27 16:49:55 · 576 阅读 · 0 评论 -
时光机穿梭---版本回退
现在,你已经学会了修改文件,然后把修改提交到Git版本库,现在,再练习一次,修改readme.txt文件如下:Git is a distributed version control system.Git is free software distributed under the GPL.然后尝试提交:$ git add readme.txt$ git commit -m转载 2015-02-27 16:28:21 · 660 阅读 · 0 评论 -
分支管理---Feature分支
软件开发中,总有无穷无尽的新的功能要不断添加进来。添加一个新功能时,你肯定不希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能,最好新建一个feature分支,在上面开发,完成后,合并,最后,删除该feature分支。现在,你终于接到了一个新任务:开发代号为Vulcan的新功能,该功能计划用于下一代星际飞船。于是准备开发:$ git checkout -转载 2015-03-02 15:55:33 · 693 阅读 · 0 评论 -
unable to read askpass response from '/usr/libexec/openssh/gnome-ssh-askpass
今天在git push origin master 时,竟然出现了错误 unable to read askpass response from '/usr/libexec/openssh/gnome-ssh-askpass搜索出来下面一段话。让SSH_ASKPASS关闭掉即可。However, for some wierd reason, upon trying to p转载 2015-03-02 16:12:14 · 3562 阅读 · 0 评论 -
分支管理---Bug分支
软件开发中,bug就像家常便饭一样。有了bug就需要修复,在Git中,由于分支是如此的强大,所以,每个bug都可以通过一个新的临时分支来修复,修复后,合并分支,然后将临时分支删除。当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,当前正在dev上进行的工作还没有提交:$ git status# On branch dev#转载 2015-03-02 15:44:58 · 503 阅读 · 0 评论 -
sourcetree帮助文档
SourceTree可以在bookmarks界面跟踪所有的git和mercurial项目。可以概览工程中是否有需要提交的文件等。添加新的bookmark很简单,可以通过两种方式,通过本地的file sysytem或者clone url或者是创建新的仓库。本地:就是在本地已经有了git项目,然后直接导入即可。可以找到需要的本地项目然后直接拖曳或者选择“add working copy转载 2015-03-16 14:41:19 · 967 阅读 · 0 评论 -
git--- 删除不存在对应远程分支的本地分支
问题描述是:我在远程上建立了一个分支feature,后来leader觉得不合理,就把远程feature分支删除,并又建立了一个feature分支,这导致我在sourceTree上无法pull到最新的版本。也假设出现这样的情况:我创建了本地分支b1并pull到远程分支 origin/b1;其他人在本地使用fetch或pull创建了本地的b1分支;我删除了 origin/b原创 2015-04-13 09:59:28 · 17587 阅读 · 1 评论 -
GitHub vs. Bitbucket 不只是功能不同
英文原文:GitHub vs. Bitbucket: It’s More Than Just Features让我们回到2005年,Bitkeeper,当时托管着Linux内核项目,在改变它关于价格的核心策略后引发了一系列的事情。在被Andrew Tridgell创建的免费Bitkeeper复制后,内核的协议变得令人痛苦——这在开源社区是一个重要的事情。转载 2015-02-28 13:35:05 · 655 阅读 · 0 评论