GitHub
哇风
欢迎大家一起来学习 c/c++ ,数据结构,嵌入式相关课程
交流qq群:499984459
展开
-
Git | 如何将已有项目添加到Gitee
Git | 如何将已有项目添加到Gitee初始化Gitgit init 初始化Gitgit add . 添加文件git commit -m '提交说明' 提交到本地仓库git remote add origin https://gitee.com/**************.git 连接到远程仓库git push -u origin master 创建上传流推送仓库origin的master分支上,可能会出现以下错误git pull --rebase origin master原创 2021-07-28 07:35:57 · 179 阅读 · 0 评论 -
git merge了一个分支到master之后,提交到了github,怎样在github也撤回merge。
如果你是在本地 merge 的,那你可以通过 git reflog 查看你的历史操作,然后通过 git reset --hard HEAD@{n} 回退到 reflog 里面的第 n 步然后,git push origin master -f 就可以把远程的 master 退回到之前的状态了其实,既然你是 merge 的,那么会生成一个 merge commit。你也可以先在本地 git ...原创 2019-06-03 12:35:10 · 2153 阅读 · 0 评论 -
一.Git简介
Git'特点1.存储直接快照,而非比较差异2.断网不罢工,也能照常工作3.杀手锏:分支管理4.git 是打开开源世界的大门教程简介1.30个常用命令的熟练掌握2.Git内部原理理解,一个仓库,二个引用,三大工作区,四大Git对象3.Git实战:如何利用Git去开展自己的工作,团队合作...原创 2019-11-23 14:37:40 · 81 阅读 · 0 评论 -
二.Git安装
1.在windows安装GitCygwin模拟环境 模拟了unix的系统调用Api,在windows下可以运行Linux工具和shell命令在该环境下安装gitWine模拟环境模拟了windows的系统调用Api,可以在linux下面运行Windows应用程序MsysgitGit的“windows版本”将Git和Cygwin一起打包,集成了Git所需要的运行环...原创 2019-11-23 15:00:39 · 89 阅读 · 0 评论 -
三.快速开始 -新建仓库和配置git
新建仓库:git initgit配置: git config姓名:git config --global user.name "xxxx"邮箱:git config --global user.email "xxxx@qq.com"差异颜色显示:git config --global color.ui true设置别名: git config--global alias....原创 2019-11-23 16:42:07 · 70 阅读 · 0 评论 -
四 Git基本流程
git的三个区:工作区,暂存区,.git 版本库在工作目录(工作区)中修改某些文件vi file.c对已修改文件作快照,并保存到暂存区域git add file.c将保存在暂存区的文件快照提交到版本库git commit -m "commit info"查看提交历史git loggit lshow sha1 查看本次提交的具体的修改...原创 2019-11-23 17:03:55 · 93 阅读 · 0 评论 -
五. 分支和标签使用
创建分支git branch new切换分支git checkout new查看分支git branch创建标签git tag v1.0查看标签git taggit show v1.0删除标签git tag -d v1.0原创 2019-11-23 17:34:23 · 81 阅读 · 0 评论 -
六.git基本概念
Git本质- 一套内容寻址的文件系统版本库中文件的三种状态- 已修改:modified- 已暂存:staged- 已提交:commit一个仓库二个引用三个工作区- 工作目录- 暂存区域- 版本库(仓库)工作区下的文件状态- 未被追踪:untracked- 被追踪:trackedGit 索引(index)什么是索引- 存储了一个tr...原创 2019-11-23 17:35:33 · 86 阅读 · 0 评论 -
十一文件重命名
文件重命名git mv old_file new_file重命名实际操作:文件移动:mv old_file new_file删除旧文件:git rm old_file添加新文件:git add new_file原创 2019-11-27 07:21:00 · 87 阅读 · 0 评论 -
十二.文件添加与提交
文件添加:添加某个文件:git add file.c添加所有文件:git add .作用:已经追踪的文件,将修改从工作区保存到暂存区未追踪的文件,加入git追踪范围文件提交:将暂存区的所有内容提交到版本库单步提交:git commit -m "commit info"一次性提交:git commit -a修改最后提交:git commit -amend注...原创 2019-11-27 07:33:29 · 115 阅读 · 0 评论 -
十三.文件删除
从工作目录中删除从工作目录和暂存区中删除git rm -f file.c避免文件出现在未跟踪清单中删除并提交后,该文件就不再被版本库追踪,但是版本库中仍然有这些文件的快照从暂存区中删除,工作目录中保留命令:git rm -cached file.c包括:库文件,可执行文件,日志,临时文件从版本库中删除:版本回退到错误提交前的版本撤销提交到暂存区:git r...原创 2019-11-27 07:54:39 · 93 阅读 · 0 评论 -
十四. 忽略文件
有些文件不必要提交到版本库中可执行文件,日志文件,临时文件,库文件忽略文件模式,glob 模式匹配- 忽略以#开始的行(.gitignore 中行的注释)- 忽略某种格式结尾文件,*.[ao] (忽略.a 和 .o结尾的文件)某个库文件除外,不忽略:!clib.a忽略临时文件:*~忽略跟目录下的某个文件:/text忽略某个目录下的所有文件:libs/,libs...原创 2019-11-27 09:07:18 · 85 阅读 · 0 评论 -
十五. 撤销修改
撤销工作区的修改git checkout --file.c让文件回到最近一次commit或add的状态若文件还没添加到暂存区,撤销后和版本库一样若文件已添加到暂存区且做了修改:回到暂存区状态撤销暂存区的内容git reset HEAD file.c将暂存区的修改撤销掉,重新放回工作区撤销版本库的提交git reset --hard SHA1 (HEAD^)回...原创 2019-11-27 09:26:17 · 93 阅读 · 0 评论 -
十六. 差异比较
比较工作区和暂存区差异git diff查看尚未暂存文件有哪些新的修改比较暂存区和版本库差异git diff --cached(HEAD)git diff --staged SHA查看已暂存文件和上次提交的快照之间的差异比较工作区和版本库差异git diff HEAD(SHA1)查看未暂存文件和最新提交文件快照的区别比较两个版本之间差异git diff...原创 2019-11-27 09:30:39 · 161 阅读 · 0 评论 -
十七.压缩仓库
压缩版本库在日常运行中,git快照会占用磁盘空间Git会在增加存储单元中存储修改通过git gc 命令压缩增量存储单元,节省磁盘空间快照的存储对于修改的内容,做快照处理并保存对于未修改的文件,做引用处理git cat-file -p SHA 查看版本库对象...原创 2019-11-30 21:13:06 · 101 阅读 · 0 评论 -
十八.查看提交历史
参数选项- - 显示每个版本的修改差异: git log -p -2 | git shortlog-- 单行显示3条记录:gitlog -3 -pretty=oneline | git log -oneline-- 图形化显示: gitlog --graph | gitk缉凶利器: git blame-- 查看一个文件每一行的提交记录--查看第6到...原创 2019-11-30 21:30:27 · 88 阅读 · 0 评论 -
十九.提交查找
关键字查找--不同的参数灵活使用 查找所有包含hello字符串的文件,、显示关键字所在文件的行号:git grep -n hello不显示内容,只显示文件名: git grep --name -only查看每个文件有多少个匹配:git grep -c hello在特定版本里查找:在v1.0版本里查找:Git grep string v1.0组合查找与查找,或查...原创 2019-11-30 21:42:22 · 73 阅读 · 0 评论 -
二十.修改查找
增补提交修改最后一次提交: 修改提交信息或者内容 git commit--amend反转提交将原来的提交取消掉git revert SHA1反转多个提交:要先反转最后提交,防止冲突。此时原操作的逆操作都在暂存区,然后重新手动提交git revert -n HEADgit revert -n SHA1git commit -m "revert HEAD...原创 2019-11-30 21:56:41 · 71 阅读 · 0 评论 -
八.远程仓库
远程仓库的概念协议:ssh协议:同时支持Git默认使用的网络协议http/https协议Git协议ssh key服务器的一种授权访问机制类似的:天王盖地虎<-->宝塔镇河妖ssh公钥生成1.先看用户目录下有没有: ~/.ssh2.没有的话使用命令生成:ssh-keygen -t rsa -C "lvmengzou2...原创 2019-11-23 18:00:53 · 91 阅读 · 0 评论 -
十.使用Github代码托管
1.注册,创建仓库2.添加ssh-key -验证key是否添加成功 ssh -T git@github.com3.克隆仓库到本地git@github.com/jason-lv-meng/study_repo.gitssh:github.com/jason-lv-meng/study_repo.githttps://github.com/jason-lv-men...原创 2019-11-23 18:54:13 · 89 阅读 · 0 评论 -
十一,远程仓库的基本操作
从远程仓库克隆 git clone repo addr添加远程仓库Git remote add origin git@github.com:jason-lv-meng/study_repo.git从远程仓库拉取数据--自动本地master分支并跟踪远程仓库master分支:git clone origin--仅仅是拉取,不合并到本地:git fetch--自动拉取某个分支...原创 2019-11-23 23:14:44 · 72 阅读 · 0 评论 -
十二,远程分支
远程分支是对远程仓库状态的索引,用origin/master表示远程分支创建将本地新建分支直接推送到远程仓库git push origin myBranch:myBranch2远程仓库没有这个分支,将创建这个分支origin/myBranch2并将本地分支和远程分支建立关联,以后可以直接push跟踪远程分支基于远程分支建立一个本地关联分支git checkout...原创 2019-11-23 23:46:15 · 80 阅读 · 0 评论 -
七.文件管理(文件添加,提交,删除)
文件添加及提交文件添加- 添加某个文件: git add file.c- 添加所有文件: git add .- 作用 . 已经追踪的文件,将修改从工作区保存到暂存区 . 未追踪的文件,加入git追踪范围文件提交 - 将暂存区的所有内容提交到版本库- 单步提交: git commit -m "commit info"- 一次性提交:...原创 2019-11-26 07:45:07 · 176 阅读 · 0 评论 -
十四.搭建本地Git服务器
架设自己的git服务器1.首先确保你的电脑能被ssh访问1.1.apt-get install openssh -server1.2.vi /etc/ssh/sshd_config :PermitRootLogin yes 可以ssh访问1.3.service ssh restart然后就可以直接访问ssh 192.168.21.1442.开启ssh授权在本地...原创 2019-11-26 05:52:09 · 140 阅读 · 0 评论 -
十五.Git+repo+gerrit 环境介绍
Git repogerrit服务器对提交接管,创建代码审查任务(web接入)代码审核流程1.review资深工程师+2,一般工程师+1总分+2才能评审通过2.Verify手工编译,专门测试人员测试自动化编译,自动化测试verify+1:才能通过3.Merge把通过审核的修改合并到公共仓库中...原创 2019-11-26 06:30:41 · 236 阅读 · 0 评论 -
十六.标签管理
标签的概念什么是标签标签是一个引用,标签对象可以指向任何对象通常情况下,是指向一个提交(commit)包括一个标签,一组数据,一个消息,一个指针标签有什么作用使用标签可以方便地标记里程碑发布软件的版本标识(内核linux2.6.30)标签的基本操作打标签在当前分支的末端创建轻量级标签,git tar V1.0给指定某个commit打标签:git t...原创 2019-11-26 06:48:19 · 205 阅读 · 0 评论 -
七 . .git目录
.git目录仓库子目录branches 项目分支信息hooks 默认的hooks脚本,由特定事件触发info:内有exclude文件,指定git要忽略的文件logs:历史记录,删除的commit对象等objects:Git数据对象,commit,tree,blob,tagrefs:Git引用,指向(远程)分支,标签的指针config:Git项目配置信息HEAD:...原创 2019-11-26 07:19:17 · 70 阅读 · 0 评论 -
八.git对象模型
对象(objects)- 类型:4种数据对象:blob,tree,commit,tag- 大小: 对象数据内容的大小- 文件名: 如果SHA1算法生成SHA1对象数据- 用40个字符的字符串用来表示对象名:目录+名字符串由对象内容做SHA-1哈希计算得来通过比较SHA-1值来比较两个文件的内容:快!不同类型的对象用途blob:存储文件数据,通常是一个文件tr...原创 2019-11-26 07:27:49 · 87 阅读 · 0 评论 -
sourcetree的使用方法
之前在协同开发中遇到过这样的一个问题,在使用git合并代码时会覆盖掉其他同事的代码,刚开始接触的时候用的是命令行,后台开始用IDEA自带的git插件,今天第一次用到SourceTree,操作起来挺方便的!一 、SourceTree简介SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端,拥有可视化界面,容易上手操作。同时它也是Mercurial和...原创 2019-12-12 11:21:03 · 442 阅读 · 0 评论 -
七.Git对象模型
对象(objects)类型:4种数据对象:blob tree commit tag大小:对象数据内容的大小文件名:如果SHA1算法生成SHA1对象数据 用40个字符的字符串用来表示对象名:(目录+名)字符串由对象内容做SHA-1哈希计算得来通过比较SHA-1 值来比较两个文件的内容:快不同类型的对象用途blob:存储文件数据,通常是一个文件tree:类似一...原创 2019-12-27 07:38:14 · 76 阅读 · 0 评论