Github入门操作实录
到目前为止,我已经工作快5年了,这5年最大的感受就是,框架什么的并不难,只要知道api,就能用起来,一开始会遇到一点问题,但是天下的框架都大同小异,无非是jar包,配置文件,模板代码,jar包可以使用maven搞定,配置文件和模板代码,就需要相应的api了。到了我们这个年纪,似乎到了某个瓶颈期,如果只是满足于公司的项目,似乎就是在原地踏步,而程序猿的成长,是需要开源项目的。开源项目,大多数人会托管到github上,因为之前公司用的一直是svn,之前也接触过git,但是由于项目紧张或者其他原因,始终没弄清楚,所以近期就自己学习了一下,以下是我自己的一些操作实录。
首先需要的是注册一个github账号(https://github.com/),需要验证邮箱。其次是下载一个git客户端,如下图:

windows版本下载地址:https://git-scm.com/download/win
(linux版本:https://git-scm.com/download/linux)
下载安装,按照默认的来就行。
安装完成后,打开git-bash.exe

# 启动git-bash,执行以下命令,ssh-keygen 后面要输入你验证的邮箱
cd ~/.ssh
ssh-keygen -t rsa -C "593642275@qq.com"
# 此处要求你输入目录,默认不输入
cat ~/.ssh/id_rsa.pub
# 将文件内容贴到 https://github.com ( Settings--SSH keys--New SSH key ),就是相当于在线上github官网上面注册了ssh


# 此命令验证key(对于 Permanently added the RSA host key for IP address... 提示可以不用去管)
ssh -T git@github.com

# 把本地仓库传到github上去,设置username和email,因为github每次commit都会记录他们
git config --global user.name "aJavaBird"
git config --global user.email "593642275@qq.com"

好了,到目前为止,git已经设置得差不多了,之后就是导入项目进行测试了。
在github上面找到一个项目(比如我找的项目url是:https://github.com/aJavaBird/ChineseChess),开始检出github上面的项目
# 进入自己的仓库目录 D:\myWork\gitRepository(此目录可以是任意一个目录)
cd /D/myWork/gitRepository # 检出项目:https://github.com/aJavaBird/ChineseChess (注意最后要加上.git)
git clone https://github.com/aJavaBird/ChineseChess.git


好,代码已经成功检出了,我们可以在本地运行代码了,同时可以修改文件并提交了。
# 进入 D:\myWork\gitRepository\ChineseChess 目录,增加一个test.txt 文件,随便输入点内容
# 提交这个文件,commit 最后的那个参数是提交注释
git add test.txt
git commit -m "this is a test,here is comment"
git push origin master

这里push是提交到远程,master是远程分支的主干分支。将本地的 master 分支推送到 origin 主机的 master 分支。
你的代码库(repository)可以存放在你的电脑里,同时你也可以把代码库托管到Github的服务器上。在默认情况下,origin指向的就是你本地的代码库托管在Github上的版本。
以上就是新加和修改的操作。
如果我想新加一个分支呢?这里以另外一个项目举例:
# 查看当前分支
git branch
# 创建本地分支
git checkout -b 2019Branch
# 将本地分支推送到远端
git push origin 2019Branch
# 删除分支需要再github上面删除(看下面的图吧)





上面是新加分支,那么如果我想在github上面新建项目,然后上传新建的项目到github,怎么操作呢?
# 新建项目,并托管到Github上
# 首先去github上面新建一个repository(https://github.com/aJavaBird/testAdd)
git init
git remote add origin https://github.com/aJavaBird/testAdd.git
git add .
git status
git commit -m "add a project to github,for test"
git push -u origin master
# 删除github上的repository:进入这个repository,选择Settings,拖到最下面,点击“Delete this repository”(看图)




基本操作就是这些,对于操作,我觉得可以参考这里
还有一点可以说一下,就是我们打开一个别人的项目时,发现可以有3个操作:watch、star、fork,这3个操作都是对原作者的项目进行关注,但是这3者却也有差别。

Github入门操作实录的更多相关文章
- github入门操作
一.更新github上的已有项目: 将repository clone到本地 shanyu@debian:~/Git$ git clone https://github.com/xunbu7/Hell ...
- github入门到上传本地项目【网上资源整合】
[在原文章的基础上,修改了描述的不够详细的地方,对内容进行了扩充,整合了网上的一些资料] [内容主要来自http://www.cnblogs.com/specter45/p/github.html#g ...
- github入门到上传本地项目
GitHub是基于git实现的代码托管.git是目前最好用的版本控制系统了,非常受欢迎,比之svn更好. GitHub可以免费使用,并且快速稳定.即使是付费帐户,每个月不超过10美刀的费用也非常便宜. ...
- 《Github入门与实践》读书笔记 蟲咋先生的追求之旅(上)
<Github入门与实践>作者: [日] 大塚弘记 译者:支鹏浩/刘斌 简介 本书从Git的基本知识和操作方法入手,详细介绍了GitHub的各种功能,GitHub与其他工具或服务的协作 ...
- 服务端技术进阶(八)GitHub入门篇
服务端技术进阶(八)GitHub入门篇 前言 在投递简历的过程中,发现有的公司会要求填写自己的GitHub地址,而自己却还没有GitHub帐号,准确点说是自己还不太会使用GitHub.(貌似开源社区中 ...
- Github入门详情教程
前言 之前我写了一篇文章<一篇文章了解Github和Git教程>还延伸了几篇阅读,对大部分小白很有用,那么我继续普及下Github页面及其概念. 定义 GitHub 是一个网站,一个面向开 ...
- Mycat 中间件配置初探与入门操作
Mycat中间件配置初探与入门操作 By:授客 QQ:1033553122 实践环境 Mycat-server-1.5.1-RELEASE-20161130213509-win.tar.gz 下载地址 ...
- EF+LINQ事物处理 C# 使用NLog记录日志入门操作 ASP.NET MVC多语言 仿微软网站效果(转) 详解C#特性和反射(一) c# API接受图片文件以Base64格式上传图片 .NET读取json数据并绑定到对象
EF+LINQ事物处理 在使用EF的情况下,怎么进行事务的处理,来减少数据操作时的失误,比如重复插入数据等等这些问题,这都是经常会遇到的一些问题 但是如果是我有多个站点,然后存在同类型的角色去操作 ...
- Android基础-系统架构分析,环境搭建,下载Android Studio,AndroidDevTools,Git使用教程,Github入门,界面设计介绍
系统架构分析 Android体系结构 安卓结构有四大层,五个部分,Android分四层为: 应用层(Applications),应用框架层(Application Framework),系统运行层(L ...
随机推荐
- Confluence 6 整合到支持的附件存储选项
如果你现在正在存储附件到 WebDav 或者你的数据库中.你可以整合附件的存储到文件系统中.当你的附件从数据库中被合并到文件系统后,你存储在数据库中的附件数据就可以从数据库中删除了. 当附件合并进行的 ...
- MONGODB数据基础与命令
- Ionic 2: ReferenceError: webpackJsonp is not defined
I'm new to Ionic. I have started project with super template. But when I try to run the app in brows ...
- 《剑指offer》栈的插入弹出序列
本题来自<剑指offer> 栈的插入弹出序列 题目: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2, ...
- 如何修改PDF文件内容,PDF怎么添加背景
很多的情况下,大家都会遇到PDF文件,不管是在学习中还是在工作中,对于PDF文件,文件的修改编辑是需要用到PDF编辑软件的,在编辑文件的时候,发现文件的页面是有背景颜色的,又该如何修改背景颜色呢,不会 ...
- git使用diff----git-pull之后如何查看拉下来的文件有那些修改
git pull拉取 git pull对于拉下来的修改文件自动对其进行git add /rm 及git commit 操作.所以拉下来的文件有那些修改,查看的方式可把它们归结于上一次提交的比较. gi ...
- java反射机制实例
1.通过数据库字段反射给对象实例赋值 convertClass.java /** * 通过反射构造对象 * @param obj * @param rs * @return */ public Obj ...
- Canvas锯齿问题
canvas的宽高必须通过HTML属性指定,不能通过CSS指定,否则会有锯齿 这个是通过CSS定义宽高,绘制的图形 #myCanvas{ background: black; height: 800p ...
- JAVA之复制数组
//复制数组 //Arrays.copyOf(arr, 5) //arr:要复制的对象,5为新数组的长度 import java.util.Arrays; public class Cope { pu ...
- 为什么dbms_metadata.get_ddl显示不全?
http://bi.dataguru.cn/thread-335433-1-1.html