到目前为止,我已经工作快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入门操作实录的更多相关文章

  1. github入门操作

    一.更新github上的已有项目: 将repository clone到本地 shanyu@debian:~/Git$ git clone https://github.com/xunbu7/Hell ...

  2. github入门到上传本地项目【网上资源整合】

    [在原文章的基础上,修改了描述的不够详细的地方,对内容进行了扩充,整合了网上的一些资料] [内容主要来自http://www.cnblogs.com/specter45/p/github.html#g ...

  3. github入门到上传本地项目

    GitHub是基于git实现的代码托管.git是目前最好用的版本控制系统了,非常受欢迎,比之svn更好. GitHub可以免费使用,并且快速稳定.即使是付费帐户,每个月不超过10美刀的费用也非常便宜. ...

  4. 《Github入门与实践》读书笔记 蟲咋先生的追求之旅(上)

    <Github入门与实践>作者: [日] 大塚弘记 译者:支鹏浩/刘斌   简介 本书从Git的基本知识和操作方法入手,详细介绍了GitHub的各种功能,GitHub与其他工具或服务的协作 ...

  5. 服务端技术进阶(八)GitHub入门篇

    服务端技术进阶(八)GitHub入门篇 前言 在投递简历的过程中,发现有的公司会要求填写自己的GitHub地址,而自己却还没有GitHub帐号,准确点说是自己还不太会使用GitHub.(貌似开源社区中 ...

  6. Github入门详情教程

    前言 之前我写了一篇文章<一篇文章了解Github和Git教程>还延伸了几篇阅读,对大部分小白很有用,那么我继续普及下Github页面及其概念. 定义 GitHub 是一个网站,一个面向开 ...

  7. Mycat 中间件配置初探与入门操作

    Mycat中间件配置初探与入门操作 By:授客 QQ:1033553122 实践环境 Mycat-server-1.5.1-RELEASE-20161130213509-win.tar.gz 下载地址 ...

  8. EF+LINQ事物处理 C# 使用NLog记录日志入门操作 ASP.NET MVC多语言 仿微软网站效果(转) 详解C#特性和反射(一) c# API接受图片文件以Base64格式上传图片 .NET读取json数据并绑定到对象

    EF+LINQ事物处理   在使用EF的情况下,怎么进行事务的处理,来减少数据操作时的失误,比如重复插入数据等等这些问题,这都是经常会遇到的一些问题 但是如果是我有多个站点,然后存在同类型的角色去操作 ...

  9. Android基础-系统架构分析,环境搭建,下载Android Studio,AndroidDevTools,Git使用教程,Github入门,界面设计介绍

    系统架构分析 Android体系结构 安卓结构有四大层,五个部分,Android分四层为: 应用层(Applications),应用框架层(Application Framework),系统运行层(L ...

随机推荐

  1. 开源中国社区 https://git.oschina.net/ 添加 SSH 公钥 添加

    首先可以参考官方的帮助文档 http://git.mydoc.io/?t=154712 然后进去码云首页 http://git.oschina.net 然后找到右边的头像点击一下  然后点击修改资料 ...

  2. 【shell】两种字符串提取场景的实现

    shell虽然比batch顺眼点儿,但还是老话,入门容易,精通难. 1.场景一是这样的,现有字符串的内容 name: tiger; age:18; location:china; 需求:提取每个属性的 ...

  3. windows下如何安装pip以及如何查看pip是否已经安装成功

    最近刚学习python,发现很多关于安装以及查看pip是否安装成的例子都比较老,不太适合于现在(python 3.6 )因此,下一个入门级别的教程. 0:首先如何安装python我就不做介绍了. 1: ...

  4. ionic在ios侧滑页面空白 禁用视图滑动后退

    本人在ios10左右滑动的时候,经常出现左滑页面后退,然后整个页面空白现象,只能强行退出,并重新登录,最简单的方法就是禁用侧滑后退这个功能: 在app.js上config增加如下: $ionicCon ...

  5. 用flask的扩展实现的简单的页面登录

    from flask import Flask,render_template,request,redirect,session app = Flask(__name__,template_folde ...

  6. servlet 乱码解决方法

    一. servlet 发送的html 页面中文乱码 解决方法, 1.加入如下代码 response.setCharacterEncoding("UTF-8"); 2.在html页面 ...

  7. element-ui中用el-dialog+el-table+el-pagination实现文件默认选中且在分页的条件下有记忆功能

    需求: 点击按钮,出现列表弹框,选择需要的选项确认后显示选中的选项.每次点击按钮,列表中默认显示之前选中的文件. el-table-column,设type属性为selection,实现表格中多行选择 ...

  8. Nginx详解十:Nginx场景实践篇之Nginx静态资源场景配置

    一.静态资源WEB服务 1.静态资源类型:非服务器动态运行生成的文件 2.静态资源服务场景-CDN 假设静态资源存储中心在云南,用户在北京去请求一个文件,那么就会造成一个传输的延时,而如果Nginx同 ...

  9. 获取git更新文件

    #获取最后一个版本的更新日志workspace2=/testtemplogdir=/testtmprm -rf ${logdir}/change.loggit diff --stat $GIT_PRE ...

  10. Duplicate 复制数据库 搭建Dataguard

    1 操作系统环境 此处隐藏具体信息 System IP-address db_name db_version Comment         Target DB         Auxiliary D ...