随笔分类 -  git

摘要:在服务器上生成ssh-key以后,需要把公钥放在github上,但是,这个公钥只能放在一个账户里,如果放在第二个账户里,就会提示这个key已经被用了,这是前提 一个可能的场景是这样的: 你们公司有好几个项目都托管在git上,然后有一台公用的服务器,这时候,你的同事在服务器上搞了一套ssh-key,添 阅读全文
posted @ 2019-08-22 20:00 413Xiaol 阅读(4895) 评论(0) 推荐(0)
摘要:merge rebase \ 阅读全文
posted @ 2019-04-06 13:53 413Xiaol 阅读(130) 评论(0) 推荐(0)
摘要:添加submodule: git submodule add 子模块git地址 把这个module放置的文件夹(这个文件夹须事先不存在) push到远程: 执行上一步会生成一个.gitmodules隐藏文件,和module放置的文件夹 更新submodule: cd 放置module的文件夹 && 阅读全文
posted @ 2019-04-06 10:36 413Xiaol 阅读(250) 评论(0) 推荐(0)
摘要:已经有远程分支,在本地检出,并且关联到远程分支 git checkout --trach origin/远程分支名 git checkout -b 本地分支名 origin/远程分支名 没有远程分支,本地有一个分支,要推送到远程 git push --set-upstream origin 分支名 阅读全文
posted @ 2019-04-05 17:15 413Xiaol 阅读(209) 评论(0) 推荐(0)
摘要:git config --global alias.lg 'log --oneline --all --graph --decorate' 阅读全文
posted @ 2019-04-05 15:56 413Xiaol 阅读(141) 评论(0) 推荐(0)
摘要:git diff 比暂存区与工作区的差别 git diff HEAD / commitId 比较版本库与工作区的差别 / 特定提交 git diff --cached git diff --cached [commit id] 暂存区与版本库之间的差别 阅读全文
posted @ 2019-04-01 22:59 413Xiaol 阅读(126) 评论(0) 推荐(0)
摘要:git blame filename:显示整个文件的每一行的详细修改信息:包括SHA串,日期和作者。 其显示格式为: commit ID | 代码提交作者 | 提交时间 | 代码位于文件中的行数 | 实际代码 当确定commit ID后,如果想要知道某次提交还改了什么:git show commit 阅读全文
posted @ 2019-03-20 22:14 413Xiaol 阅读(484) 评论(0) 推荐(0)
摘要:标签一旦打上那么在任何一个分支上都可以看到,标签不依赖于特定的分支 显示所有标签:git tag 查找标签:git tag -l 'v1.0*' 查看某一个标签:git show v1.0.1 轻量级标签:git tag v1.0.1 带有附注的标签:git tag -a v1.0.2 -m 're 阅读全文
posted @ 2019-03-20 22:02 413Xiaol 阅读(116) 评论(0) 推荐(0)
摘要:$ git log --oneline --all --graph --decorate * 1efcf18 (HEAD -> master) 4 commit * 6a7ace8 3 commit * 3be5879 2 commit * 3d1a4d4 1 commit $ git branch * master $ git branch dev 3be5879 $ git br... 阅读全文
posted @ 2019-03-20 21:41 413Xiaol 阅读(2269) 评论(0) 推荐(0)
摘要:回退到上一个版本 回退到某一个版本 准备环境: 回退一个版本 回退两个版本 回退到最新的那个版本(回去了) 阅读全文
posted @ 2019-03-20 21:04 413Xiaol 阅读(139) 评论(0) 推荐(0)
摘要:git mv 行为: 1.创建一个和之前文件内容一样的文件,文件名为新的文件名 2.将原来的文件删除 3.将删除的文件添加到暂存区 4.将新建的文件添加到暂存区 $ git mv a a1 $ git statusOn branch masterChanges to be committed: (u 阅读全文
posted @ 2019-03-18 21:29 413Xiaol 阅读(4440) 评论(0) 推荐(2)
摘要:git rm 行为: 1.删除一个文件 2.将被删除的这个文件纳入缓存区 提交: 直接 git commit -m '' 恢复: 1. 恢复暂存区 2. 恢复工作区 直接调用系统的rm 行为: 从工作区删除了一个文件 提交: 1.把修改加入暂存区 2.提交暂存区的改动 恢复: 直接恢复工作区就好了, 阅读全文
posted @ 2019-03-18 20:36 413Xiaol 阅读(1317) 评论(0) 推荐(0)
摘要:1.查看是否已经安装了git: git --version2.如果安装的版本不对,就卸载了: yum remote git 3.查看yum中git的版本信息: yum info git4.如果是自己想要的版本,则可以直接通过yum进行安装: yum install git。 5.下载正确版本的git 阅读全文
posted @ 2019-02-24 23:51 413Xiaol 阅读(679) 评论(0) 推荐(0)
摘要:引用规格(refspec):就是在 .git/config 里面那个配置远程仓库的东西 [remote "origin"]url = https://github.com/test/demofetch = +refs/heads/*:refs/remotes/origin/* 格式:由一个可选的 + 阅读全文
posted @ 2017-11-14 20:51 413Xiaol 阅读(403) 评论(0) 推荐(0)
摘要:git向磁盘中存储对象使用“松散(loose)”对象格式。比如文件a.txt第一个版本大小是10k,第二个版本向其中添加了一行代码,假如此时文件为10.1k,那么第二个版本会重新产生一个1.1k的文件,这样会很浪费磁盘空间,所以git会时不时地将多个这些对象打包成一个称为“包文件(packfile) 阅读全文
posted @ 2017-11-13 23:05 413Xiaol 阅读(5769) 评论(0) 推荐(0)
摘要:config 定义项目特有的配置选项description 仅供git web程序使用info/ 包含一个全局排除文件(exclude文件),用于配置不在.gitignore中的忽略模式hooks/ 包含git钩子文件HEAD 指示当前被检出的分支objects/ 存放所有数据内容,有info和pa 阅读全文
posted @ 2017-11-13 00:17 413Xiaol 阅读(6022) 评论(0) 推荐(0)
摘要:当运行git add git commit的时候,git底层都做了什么?这里涉及到的底层命令:git hash-object 讲对象写入到git object中git update-index 更新暂存区git write-tree 创建树对象(相应的有 git read-tree这个例子里没用)g 阅读全文
posted @ 2017-11-13 00:13 413Xiaol 阅读(658) 评论(0) 推荐(0)
摘要:定义: 钩子:由事件触发的函数 分类: 客户端钩子:由诸如提交和合并这样的操作触发 服务器端钩子:由诸如接收被推送的提交这样的联网操作触发 安装: a.钩子都被存储在 .git 目录下的 hooks 子目录中 b.当 git init 初始化一个新版本库时,默认会在这个目录中放置一些示例脚本 c.任 阅读全文
posted @ 2017-11-08 22:55 413Xiaol 阅读(756) 评论(0) 推荐(0)
摘要:1.默认的编辑器:core.editor git config --global core.editor emacs 2.默认提交模版:commit.template 假设你创建了一个叫 ~/.gitmessage.txt 的模板文件,类似这样: subject line what happened 阅读全文
posted @ 2017-11-08 21:42 413Xiaol 阅读(351) 评论(0) 推荐(0)
摘要:a.查找系统配置文件: /etc/gitconfig 文件,该文件含有系统里每位用户及他们所拥有的仓库的配置值 b.查找用户配置文件: ~/.gitconfig 文件 或者 ~/.config/git/config 文件 c.查找项目配置文件:在项目目录下的 .git/config 配置: a.系统 阅读全文
posted @ 2017-11-08 21:15 413Xiaol 阅读(645) 评论(0) 推荐(0)