git--github使用
什么是github
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。
GitHub于2008年4月10日正式上线,除了Git代码仓库托管及基本的 Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其注册用户已经超过350万,托管版本数量也是非常之多,其中不乏知名开源项目 Ruby on Rails、jQuery、python 等。
我们可以把我们本地的代码推送到github上面,如果要推送到github上,我们需要有自己的github账号,还要建一个仓库
创建仓库
现在我们都有自己的github账号了,创建了一个仓库后跳转页面如下
这里我把它分为两个区域,第一个区域是你本地没有进行版本控制,执行的命令
第二个是你本地已经有文件,并且通过git进行了版本控制,使用下面的命令推送到github上。
其中的origin是我们给后面的地址起的别名,大家可以自定义
推送到github
# 给远程仓库起别名
git remote add origin 远程仓库地址 # 推送到远程分支
git push -u origin 分支名称
我们本地已经有了文件夹,并且已经被git管理了起来,所以我们执行第二条命令,我这里选择的是https的
# git remote add origin https://github.com/liuzouzou/git_demo.git # git push -u origin master
Enumerating objects: 22, done.
Counting objects: 100% (22/22), done.
Delta compression using up to 4 threads.
Compressing objects: 100% (21/21), done.
Writing objects: 100% (22/22), 2.33 KiB | 476.00 KiB/s, done.
Total 22 (delta 6), reused 0 (delta 0)
remote: Resolving deltas: 100% (6/6), done.
To https://github.com/liuzouzou/git_demo.git
* [new branch] master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.
这样我们就把我们的代码推送到了github上,刷新可以看到我们的代码已经存在了
但是这样推送上去的只有master,在之前我们创建了两个分支,一个是dev分支,一个是bug分支,bug分支被我们删除了
如果我们需要把dev也推送上去,可以执行下面的命令
# git push -u origin dev
Total 0 (delta 0), reused 0 (delta 0)
remote:
remote: Create a pull request for 'dev' on GitHub by visiting:
remote: https://github.com/liuzouzou/git_demo/pull/new/dev
remote:
To https://github.com/liuzouzou/git_demo.git
* [new branch] dev -> dev
这样我们的dev分支就也被推送上去了
从github拉取代码
既然我们把代码推送到了github上,我们从另一台机器上也要开发,这时候我们可以从github上拉取下来
# 克隆远程仓库代码
git clone 远程仓库地址(内部已实现git remote add origin 远程仓库地址)
# git clone https://github.com/liuzouzou/git_demo.git
Cloning into 'git_demo'...
remote: Enumerating objects: 22, done.
remote: Counting objects: 100% (22/22), done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 22 (delta 6), reused 22 (delta 6), pack-reused 0
Unpacking objects: 100% (22/22), done.
这样我们就把github上的代码拉取下来了,里面对应的版本也有,虽然使用git branch看不到dev分支,其实是存在的,我们可以直接切换到dev分支里
git pull
上面我们使用git clone从远程仓库拉取下来了代码,如果我们下一次从github获取最新代码,还需要clone吗?答案肯定不是的,git clone只是当本地没有的时候,第一次获取才需要,如果本地已经有部分代码了,就不需要用git clone了,用git pull就可以了
# git pull origin master # 拉取master的代码 # git pull origin dev 拉取dev的代码
上面的git pull origin dev等价与下面的两行代码
# git fetch origin dev
# git merge origin/dev
当我们使用git pull origin dev的时候,是把远程仓库的代码拉取到了本地的工作区
执行git fetch origin dev 是把远程仓库里的代码拉取到本地的版本库里
执行git merge origin/dev 是把本地版本库里的代码拉取到本地的工作区
git tag
我们之前提交后显示的版本号都是git自动给我们生成的,如下
在没tag之前,github上的Tags和release都是空的
在本地创建tag信息
# git tag -a version1 -m 'version1的版本'
把本地tag信息推送到远程仓库
使用git push origin --tags推送到远程仓库
# git push origin --tags Enumerating objects: 1, done.
Counting objects: 100% (1/1), done.
Writing objects: 100% (1/1), 166 bytes | 166.00 KiB/s, done.
Total 1 (delta 0), reused 0 (delta 0)
To https://github.com/liuzouzou/git_demo.git
* [new tag] version1 -> version1
然后再去github上查看
建立了tag之后,就可以在release里下载zip包或者tar的包了
删除本地的tag
# git tag -d version1
更新本地的tag版本信息
# git pull origin --tags
切换tag
# git checkout version1
指定tag下载代码
# git clone -b version1 地址
git--github使用的更多相关文章
- git &github 快速入门
本节内容 github介绍 安装 仓库创建& 提交代码 代码回滚 工作区和暂存区 撤销修改 删除操作 远程仓库 分支管理 多人协作 github使用 忽略特殊文件.gitignore 1.gi ...
- git+github上传与管理
1.首先下载并安装git,方便管理github上的代码 https://git-scm.com/downloads 2.然后点击安装好的git bash(注册好自己的github) git confi ...
- git/github学习笔记
郑重提示,本文来自这里,如果喜欢,请关注原作者. 1. git 版本控制系统 相比CVS\SVN优势: - 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块 ...
- Git/GitHub 初用体验与总结
Git,一个神奇而又陌生的东西,居然到现在才去了解它,就像有一位仁兄说的,现在不会用Git真的都不好意思说自己搞IT的. 简单的讲,这Git是目前最先进的分布式版本控制系统,和他相对应的就是众所周知的 ...
- git github简单知识
Git 常用命令 git init here -- 创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文件夹里存储了所有的版本信息.标记等内容 git remo ...
- Git/Github + TortoiseGit 使用教程
前言 Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理. 在github上有很多优秀的项目,一个伟大的学习宝库.本文分享使用tortoisegit对github/ ...
- Git+GitHub 使用小结
1.Git安装完成后需要做的配置 $ git config --global user.name "Your Name" $ git confi ...
- Git & Github 一页简明笔记
由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 相信这种一页的简明笔记,对大家也是有帮助的.我的笔记总结自廖雪峰的Gi ...
- git/github初级运用自如(zz)
----//git/github环境配置 一 . github上创建立一个项目 用户登录后系统,在github首页,点击页面右下角“New Repository” 填写项目信息: project n ...
- git/github 使用
原文:http://www.cnblogs.com/fnng/archive/2011/08/25/2153807.html git/github学习笔记 Posted on 2011-08-25 2 ...
随机推荐
- cairosvg使用过程中需要注意的问题
在使用pygal的过程中,图片默认保存的是svg格式,如果需要生成本地的图片需要进行一些配置.下面是在摸索时的一些流程: 1.查看pygal的函数,dir(pygal.bar),发现其支持保存为png ...
- bzoj3293 分金币
题目链接 problem 圆桌上坐着n个人,每人有一定数量的金币,金币总数能被n整除.每个人可以给他左右相邻的人一些金币,最终使 得每个人的金币数目相等.你的任务是求出被转手的金币数量的最小值. so ...
- 第04组 Alpha冲刺(3/4)
队名:斗地组 组长博客:地址 作业博客:Alpha冲刺(3/4) 各组员情况 林涛(组长) 过去两天完成了哪些任务: 1.收集各个组员的进度 2.写博客 展示GitHub当日代码/文档签入记录: 接下 ...
- SQLServer某个库log日志过大,无法收缩日志文件 ,因为该文件结尾的逻辑日志文件正在使用
问题描述: 今天看到user库日志备份方面很久,然后查看到user库这个log日志很大 图片是我已经解决了,然后现在可以收缩的大小 解决方法: 1.先备份user库日志,因为很大,所以要等很久,这个只 ...
- 导出HTML5 Canvas图片并上传服务器功能
这篇文章主要介绍了导出HTML5 Canvas图片并上传服务器功能,文中通过实例代码给大家介绍了HTML5 Canvas转化成图片后上传服务器,代码简单易懂非常不错,具有一定的参考借鉴价值,需要的朋友 ...
- 聊聊 Vue 中 title 的动态修改
由于之前的 Vue 项目打包成果物一直是嵌入集成平台中,所以一直没有关注过项目的 title.直到最近,突然有个需求,要求点击按钮在集成平台外新开一个页面,此时我才发现,原来我的项目的 title 一 ...
- python爬虫:将数据保存到本地
一.python语句存储 1.with open()语句 with open(name,mode,encoding) as file: file.write() name:包含文件名称的字符串; mo ...
- 配置文件_自定义section标签获取数据
前言:为了节约时间,先只粘贴关键代码: 1-添加section标签,name为自定义标签名称,type为:命名空间+类型,程序集名称 <section name="watchModel ...
- 17个常见的Python运行时错误
对于刚入门的Pythoner在学习过程中运行代码是或多或少会遇到一些错误,刚开始可能看起来比较费劲.随着代码量的积累,熟能生巧当遇到一些运行时错误时能够很快的定位问题原题.下面整理了常见的17个错误, ...
- 致Python初学者的六点建议
Python是最容易学习的编程语言之一,其语法近似英语.通常,初学者只会遇到一些小麻烦,如强制缩进.在函数中使用self等. 然而,当开始阅读.复制和编辑他人代码时,麻烦就接踵而至了. 这里,我将解释 ...