git/github运用

git/github运用

https://www.cnblogs.com/yydcdut/p/3898223.html

了解git和svn很久了,但是一直没有拿来做过版本控制管理,虽然svn有用到过,但是觉得还是运用git的比较多吧,尤其github。

Git术语                                                                    

 
术语 定义
仓库 一个仓库包括了所有的版本信息、所有的分支和标记信息.
Repository 在Git中仓库的每份拷贝都是完整的。仓库让你可以从中
  取得你的工作副本。
  一个分支意味着一个独立的、拥有自己历史信息的代码线
分支 (code line)。你可以从已有的代码中生成一个新的分支
Branches ,这个分支与剩余的分支完全独立。默认的分支往往是叫
  master。用户可以选择一个分支,选择一个分支叫做
  checkout.
标记 一个标记指的是某个分支某个特定时间点的状态。通过标
Tags 记,可以很方便的切换到标记时的状态,例如2014年8月25
  号在testing分支上的代码状态
提交 提交代码后,仓库会创建一个新的版本。这个版本可以在
Commit 后续被重新获得。每次提交都包括作者和提交者,作者和
  提交者可以是不同的人
URL URl用来标识一个仓库的位置
  用来表示代码的一个版本状态。Git通过用SHA1 hash算法
修订 表示的id来标识不同的版本。每一个 SHA1 id都是160位长
Revision ,16进制标识的字符串.最新的版本可以通过HEAD来获取.
  之前的版本可以通过”HEAD~1″来获取,以此类推。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

索引                                                                         

Git 需要将代码的变化显示的与下一次提交进行关联。举个例子,如果你对一个文件继续了修改,然后想将这些修改提交到下一次提交中,你必须将这个文件提交到索引中,通过git add file命令。这样索引可以保存所有变化的快照。

新增的文件总是要显示的添加到索引中来。对于那些之前已经提交过的文件,可以在commit命令中使用-a 选项达到提交到索引的目的。

Git安装                                                                     

在Ubuntu上,可以通过apt来安装git命令行工具

sudo apt-get install git-core

Git配置                                                                      

你可以在.gitconfig文件中防止git的全局配置。文件位于用户的home目录。上述已经提到每次提交都会保存作者和提交者的信息,这些信息都可以保存在全局配置中。后续将会介绍配置用户信息、高亮显示和忽略特定的文件。

  • 用户信息

通过如下命令来配置用户名和Email

git config --global user.name "Example Surname"

git config --global user.email "your.email@gmail.com" # Set default so that all changes are always pushed to the repository git config --global push.default "matching"

获取Git配置信息,执行以下命令:

git config --list

  • 高亮显示
git config --global color.status auto
git config --global color.branch auto

  • 忽略特定的文件

可以配置Git忽略特定的文件或者是文件夹。这些配置都放在.gitignore文件中。这个文件可以存在于不同的文件夹中,可以包含不同的文件匹配模式。为了让Git忽略bin文件夹,在主目录下放置.gitignore文件,其中内容为bin。

同时Git也提供了全局的配置,core.excludesfile。

  • 使用.gitkeep来追踪空的文件夹

Git会忽略空的文件夹。如果你想版本控制包括空文件夹,根据惯例会在空文件夹下放置.gitkeep文件。其实对文件名没有特定的要求。一旦一个空文件夹下有文件后,这个文件夹就会在版本控制范围内。

github操作                                                                  

  • 获得密钥
ssh-keygen -t rsa -C "xxx@mail.com"

  • 登陆github系统

点击右上角的 Account Settings—>SSH Public keys —> add another public keys

把你本地生成的密钥(~/.ssh/id_rsa.pub文件中)复制到里面(key文本框中), 点击 add key 就ok了

  • 接着打开git ,测试连接是否成功
ssh -T git@github.com 

如果提示:Hi defnngj You’ve successfully authenticated, but GitHub does not provide shell access. 说明你连接成功了

  • github上创建立一个项目

击页面右下角“New Repository”

填写项目信息,点击“Create Repository” ; 现在完成了一个项目在github上的创建。

  • 克隆github上新创建的项目
git clone git@github.com:xxxx/xxxxx-demo.git 
//git clone git@github.com:用户名/项目名字.git

  • 提交修改
git add .
git commit –m ”new files” git push
#或者
git remote add origin git@github.com:xxxx/xxxx-demo.git

  • 更新版本
git fetch origin
//取得远程更新,这里可以看做是准备要取了 git merge origin/master //把更新的内容合并到本地分支/master

  • 简单常用命令
git remote -v  
//查看你当前项目远程连接的是哪个仓库地址。 git status //查看当前项目下所有文的状态,

  • 远程项目与本地项目联系起来
git remote add origin git@github.com:xxxx/xxxx-demo.git

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/113322.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 免备案cdn_cdn贝安装

    免备案cdn_cdn贝安装免备案CDN,符码CDN应该是使用CDN贝搭建,该CDN系统相对来说比较成熟,功能支持比较丰富。今天对符码免备案CDN进行简单的测试,仅供大家参考。首先,就是简单粗暴的多地区PING大法,简单看下CDN延迟效果:如果要是对比那么多免备案CDN延迟来说,符码CDN平均可以做到45ms的延迟,无疑是测试的所有免备案CDN中多地区PING平均延迟最小的一个,甚至一些国内CDN也达不到这个低延迟效果,延迟…

  • java获取modelmap_Model与ModelMap

    java获取modelmap_Model与ModelMapModel与ModelMapSpringMVC应用中,我们经常需要在Controller将数据传递到JSP页面,除了可以通过HttpServletRequest域传递外,SpringMVC还提供了两个Api,分别为Model接口和ModelMap类。接下来看看如何使用?1编写控制器数据存入域packagecom.yiidian.controller;importorg.springfra…

  • 运算放大电路在音频放大电路中的应用研究与实现「建议收藏」

    运算放大电路在音频放大电路中的应用研究与实现「建议收藏」1、导言放大电路是构成各种功能模拟电路的基础电路,也是对模拟信号最基本的处理。音频信号可以分解成若干频率的正玄波之和,其频率分为在20Hz~20KHz。不当的放大电路会造成音频信号的失真,亦会带来干扰和噪声。所有电子信息系统组成的原则都应包含:1、满足功能和性能要求,2、尽量简单,3、电磁兼容,4、调试应用简单。因此本文就来研究在不会增大电路复杂度的前提下,如何实现音频信号放大的同时对信号进…

  • 云计算和虚拟化技术的关系_云计算技术与应用

    云计算和虚拟化技术的关系_云计算技术与应用#写于2021.04.10#本文为学习笔记,用的ppt是陈羽中教授版,侵删#笔记只为交流,入门小白,有错望留言纠正#总结不易望赞鼓励1.大数据和云计算1.1大数据现象是怎么形成的?形成人用的多了产生数据设备多了大数据时代导致数据有以下特点:1.2云计算有哪些特点?超大规模虚拟化高可靠性通用性高可伸缩性按需服务极其廉价1.3云计算你找服务类型可分为哪几类?1.4云计算技术体系结构可分为哪几层?资源池和管理中间件层为云计算技术的

    2022年10月27日
  • 详解List的toArray()方法和toArray(T[] a)方法

    详解List的toArray()方法和toArray(T[] a)方法这两个方法都是将列表List中的元素转导出为数组,不同的是,toArray()方法导出的是Object类型数组,而toArray[T[]a]方法导出的是指定类型的数组。下面是两个方法的申明及说明,摘自Java8的API文档。toArray()方法的分析Object[]toArray()Returnsanarraycontainingalloftheelementsinthislistinpropersequence(fromfirsttolastelem

  • 常见的路由协议「建议收藏」

    常见的路由协议「建议收藏」常见的路由协议可以分为两种类型一、内部网关协议内部网关协议(IGP:InteriorGatewayProtocol),适用于单个ISP的统一路由协议的运行,一般由一个ISP运营的网络位于一个AS(自治系统)内,有统一的ASnumber(自治系统号),用来处理内部路由。RIP、IGRP(Cisco私有协议)、EIGRP(Cisco私有协议)、OSPF、IS-IS等都是内部网关协议。1、…

    2022年10月22日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号