1.新建一个“本地仓库”

$ git init

2.配置仓库

》告诉git你是谁

git config user.name lnj

》告诉git怎么联系你

git config user.email lnj@itcast.cn

》上面一种配置方式是一次性的配置, 会配置到被管理文件的。git文件夹下

》下面一种配置方式是一劳永逸的方式:

git config --global user.name lmj

git config --global user.email lmj@itcast.cn

》如何学习git指令

>学习git指令和SVN指令的学习其实是一样的, 只不过展现的方式不太一样, git是通过使用指南的方式告诉我们某一个指令如何使用

>这个指南其实是一个不可编辑的vim

Q退出指南

按空格下一页

control + B 上一页

/需要搜索的内容 可以进行搜索

git常规指令

》git status 查看文件状态

》git add 添加文件到“暂存区”

》git commit 文件名称   添加文件到”本地仓库“

注意:如果没有在commit后面加上 -m说明修改了什么, 会自动进入vim界面, 要求我们输入修改信息

按键盘上的 i 代表开始输入内容

输入完毕之后按 esc 然后按 :wq

所以: 如果以后在终端中提交最好在后面加上-m

》注意: git中的add和SVN中的add不太一样, SVN中只需要add一次, 而git中每次新建或者修改之后都需要重新add

》1.为添加之前的颜色

红色 代表在”工作区“

》2.添加到暂存区之后的颜色

绿色 代码在”暂存区“

》注意: git默认没有简写指令

》注意: 一般情况下不建议自定义简写指令

》git中的简写称之为起别名

> 查看log

》git log 文件名

》注意: GIt中的版本号是一个”40位“的哈希值, 而SVN中的版本号是一个递增的整数

》已经提交

git reset —hard HEAD^ 返回上一个版本

其中—hard代表强制重置

git reset —hard 版本号(只需要写前7位)

》未提交

git checkout 文件名 回退到上一次提交的版本

git reset —hard HEAD  回退到上一次提交的版, 注意HEAD后面没有尖号^

c9ad690 HEAD@{0}: commit: main.c

7026f99 HEAD@{1}: commit: 输出结果

e950c89 HEAD@{2}: commit: 新增输入

c7bf91c HEAD@{3}: commit: 添加变量

cbd9e52 HEAD@{4}: commit: 删除print函数

45ea44d HEAD@{5}: commit: 添加了printf函数

0da06d8 HEAD@{6}: commit (initial): i

>git reflog  查看所有修改信息(所有版本)

》查看文件被修改的什么地方

】 》git diff 文件名

》如果显示绿色代表新增

》如果显示红色代表删除

远程仓库

SVN需要一个单独的服务器

Git不需要: 文件中、U盘中、云上、github、OSChina...

1.新建git远程仓库

》git init —bare

注意: 这个仓库仅仅是用于管理代码, 不参与开发

2.项目经理初始化项目

》2.1先克隆一份空得仓库到本地

git clone /Users/apple/Desktop/working/公司远程仓库

》2.2忽略不需要加入版本控制器的文件以及文件夹

.gitignore

注意: 配置忽略文件只需要到github上搜索.gitignore拷贝别人写好的代码即可

配置.gitignore一定要在和.git隐藏文件夹同一级的目录下

》2.3生成好.gitignore文件之后, 还需要将.gitignore文件添加到版本控制

git add  .gitignore

git commit .gitignore -m””

》2.4新建项目

》 source conrol—>commit  将代码提交到本地仓库

》source conrol—>push 将代码提交到远程仓库

git中默认就会创建一个分支, 这个分支叫做origin/master, 相当于svn中的trunk

专业人员只需要在git仓库的hooks文件夹中写一些指令, 就可以完成自动测试(压力测试、自动测试、集成测试、冒烟测试、。。。)

》 和SVN一样, 如果服务器仓库的代码被修改了, 我们再提交代码也会报错。

fetch first == out of data

总结:

git和svn最大的区别

》1.git每次修改新增都需要add

》2.git每台电脑都有一个仓库

》3.git是先提交到本地仓库, 再提交到远程仓库

新人服务器搭建

1.新建一个新人服务器

2.初始化仓库

git init --bare

3.添加一个新的远程仓库

source control —> master —>config —>remotes —>add —> add remote

4.将经理最新的代码提交到新人服务器

5.经理分配新人服务器的地址给新人

GIT的分支管理

》在本地代码库给项目打上一个标签

git tag -a v1.0 -m 'Version 1.0’

》查看当前标签

git tag

注意: 此时此刻打上的这个标签仅仅是一个本地标签。(和服务器没有关系)

》将标签添推送到远程代码库中

git push origin v1.0

1.开发

2.发布

3.保存稳定版本

4.继续开发

5.出现bug

6.分配员工到分支上修复bug

>员工从服务器下载最新代码

》员工利用git checkout v1.0指令快速切换到1.0版本

》根据提示:开启一个新的分支开始修复代码

git checkout -b 1.0bug_fix

7.合并修复后的代码到主线

8.备份稳定版本

通过Xcode将代码提交到github上, 把仓库放在github上

=======================================================

》1.注册一个github账号

》2.配置SSH Keys, 只要配置了SSH Keys就可以和github无缝衔接

》点击昵称来到个人主页

》 点击主页中的设置(setting)

》 点击SSH Keys

》点击 generating SSH keys

》1.检查本地的ssh keys

在“用户目录”下 ls -al ~/.ssh

2.如果文件夹不存在需要手动创建一个

mkdir .ssh

3.根据github的提示2生成ssh keys

在.ssh目录下执行 ssh-keygen -t rsa -C "your_email@example.com”

输入完成之后连续按下回车, 知道出现牛逼的图形位置

4.生成完公钥和私钥之后输入

ls -la查看是否生成成功   id_rsa(私钥) id_rsa.pub(公钥)

5.根据提示3获得公钥

pbcopy < ~/.ssh/id_rsa.pub

6.点击 setting —》 ssh key —>add ssh key

将刚才获取到得公钥添加进去

7.更具github第4步提示, 验证公钥

验证成功网页上的灰色圆点会变成绿色

8.拷贝到公钥之后打开github主页

》点击仓库(Repositories)

》再点击new来到github创建仓库界面

9.通过github提供的地址下载一个空得仓库到本地

》创建一个新的项目到本地仓库文件夹中

》利用Xcode提交代码到github

》注意: 要求输入用户名密码时候, 输入的是github上显示的昵称而不是登录账号

=======================================================

现实生活:

运动场 == 物理仿真器

跑步 == 物理仿真行为

人 == 仿真元素

// 1.创建物理仿真器

// 2.创建物理仿真行为

// 3.将物理仿真行为添加到仿真器中

git使用方法1的更多相关文章

  1. Git使用方法(精心整理,绝对够用)转载

    Git使用方法(精心整理,绝对够用)   一.git客户端(本地仓库)的一些操作 1.设置账户(需要和github账户设置一致) git config --global user.name xxx g ...

  2. linux git 安装方法

    最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和Window ...

  3. windows 系统安装git的方法

    windows 系统安装git的方法 msysgit是Windows版的Git,从https://git-for-windows.github.io下载 安装默认步骤,一步步安装即可 安装完成后,在开 ...

  4. 转载:CODE CSDN Git 配制方法介绍

    以前一直使用Github,最近看到CSDN出了CODE代码托管功能,由于国内的阿里云服务器很稳定,而且不会被国 墙,所以果断的迁移了,下面就简单的介绍一下CODE的配置使用.其实CSDN的code 何 ...

  5. Linux 下多用户申请git公钥方法

    问题:目前大家多是通过root用户来登录编译机,导致各自生成的公钥相互覆盖,而导致无法无法多人同时使用 解决方法: 登陆编译机添加用户   # useradd -m a00123456 进入切换为自己 ...

  6. Git使用方法

    一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以 ...

  7. Git stash方法(转)

    命令:git stash1.使用git stash保存当前的工作现场,那么就可以切换到其他分支进行工作,或者在当前分支上完成其他紧急的工作,比如修订一个bug测试提交. 2.如果一个使用了一个git ...

  8. Git使用方法记录(一)

    记录下git的基本使用方法,这里是以ubuntu14.04为例. 1,使用前的初始设置 git config –global user.name “FirstName LastName” git co ...

  9. 《个人-GIT使用方法》

    使用GIT版本控制工具及基本使用方法(安装,新建,推送,拉取),托管平台的使用方法. Git 常用命令 git init here -- 创建本地仓库(repository),将会在文件夹下创建一个 ...

  10. Git使用方法2.0

    ## Git来源: 最早开始是由Ruby程序员们发起的.Ruby是日本的家伙搞出来的,日本有个代码托管网站叫heroku,当时用这个的人比较多,现在这个网站还能打开,网址是www.heroku.com ...

随机推荐

  1. 对java面向对象的初识

    我其实一直想写点东西练练自己文笔,今天写下这篇技术类型的文章也没有一个好的格式和章法,但万事开头难,那么就从面向对象开始. 我们大部分人都知道互联网软件的存在,时刻影响了我们的现实生活,那么面向对象的 ...

  2. OpenGL 的空间变换(下):空间变换

    通过本文的上篇 OpenGL 的空间变换(上):矩阵在空间几何中的应用 ,我们了解到矩阵的基础概念.并且掌握了矩阵在空间几何中的应用.接下来,我们将结合矩阵来了解 OpenGL 的空间变换. 在使用 ...

  3. JS模式--状态模式(状态机)

    下面的状态机选择通过Function.prototype.call方法直接把请求委托给某个字面量对象来执行. var light = function () { this.currstate = FS ...

  4. 经验分享:如何用grep对PHP进行代码审计

    这是一个常见的误解- 企业需要购买复杂和昂贵的软件来发现应用程序中安全漏洞:而这些专门的软件应用程序,无论是黑盒或白盒,开源或商业,都能很快的发现安全漏洞. 事实是:所有这些专业的漏洞扫描工具都有其特 ...

  5. python音频处理用到的操作

    作者:桂. 时间:2017-05-03  12:18:46 链接:http://www.cnblogs.com/xingshansi/p/6799994.html 前言 本文主要记录python下音频 ...

  6. bootstrap+masonry.js写瀑布流

    最近在用bootstrap写一个网站,其中有个图文展示的页面要用到瀑布流的效果.因为项目要求,项目要以bootstrap为基准,不准私自添加内联样式.内部样式,所以,自己写瀑布流就不行了,所以,根据要 ...

  7. iOS之RunLoop

    RunLoop是iOS线程相关的比较重要的一个概念,无论是主线程还是子线程,都对应一个RunLoop,如果没有RunLoop,线程会马上被系统回收. 本文主要CFRunLoop的源码解析,并简单阐述一 ...

  8. haproxy安装配置for mysql负载均衡(ubantu)

    1.安装pcre apt-get update (apt-get install openssl libssl-dev  ==>可能需要安装的依赖包) apt-get install libpc ...

  9. [笔记]我的Linux入门之路 - 03.Java环境搭建

    其实ubuntu是自带一个叫openJDK的东西的,是谷歌看Oracle不爽而搞的.不过呢...总感觉不太习惯,况且我既然都来Linux了,总是想折腾一把的. 首先先检查下有没有安装java.终端输入 ...

  10. Java (PO,VO,DAO,BO,POJO,DTO) 几种对象解释

    1. PO:persistant object 持久对象 可以看成是与数据库中的表相映射的java对象.最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中应该不包含任何对 ...