开发人员的必备工具Git(初级)
Git是什么
Git是目前世界上最先进的分布式版本控制系统。
这个软件用起来就应该像这个样子,能记录每次文件的改动:
举个栗子 : 版本 用户 说明 日期
1 张三 删除了软件服务条款5 7/12 10:38
2 张三 增加了License人数限制 7/12 18:09
3 李四 财务部门调整了合同金额 7/13 9:51
4 张三 延长了免费升级周期 7/14 15:17
这样,你就结束了手动管理多个“版本”的史前时代,进入到版本控制的20世纪。
Git的安装
去官网(https://git-scm.com/downloads)下载安装就行了,
里安装完什么都不用配置,直接可以使用,
mac用户可以不用安装,因为系统自带,如果嫌版本老,可以卸掉安装新版本
Git的使用
安装完成以后,你可以右键会多出

这里我们先不用GIT GUI,先学git的指令,因为GUI也是调用指令来工作的,学会了指令,GUI的图形化操作也就会了。
首先,我们在桌面创建一个demo文件夹,进入demo,右键,选择Git Bash Here,会出现

这就是git bash界面,可以输入git指令的界面(mac用户进入终端)
输入git --version 查看安装的git版本
在介绍git之前我们来看一张git的结构图

这张图就是git的原理图
工作区间:你的代码是写在工作区间的,是我们直接编辑的地方,如idea打开的项目,notepad++打开的文件
暂存区(缓存区):暂时存储你的代码的地方
本地仓库:存放已经提交的数据
远程仓库:存放提交的数据的公共仓库,如github,公司的gitla
接下来,我们就结合这个图演示git指令,首先还是刚才的那个bash窗口:
git init
创建一个仓库,你会看到demo中多个一个隐藏文件夹.git,这个时候就是把demo文件夹变成一个git的本地仓库了,这里面所有的文件都会被git管理,我们添加一个test1.txt文件
git status
查看仓库的修改情况

你会看见我们添加的文件是红色的,这个时候文件是在工作区间的
(untracked files:表示这个文件是新加的)
git add test1.txt
把文件test1.txt添加到暂存区
(一般使用git add . 表示添加当前文件夹下的所有修改都添加到暂存区)
git status
会看见添加到暂存区的文件都是绿色的

git commit -m '注释'
把暂存区的代码提交到本地仓库,提交只能提交暂存区的代码,工作区间的代码是不会被提交的,提交时必须添加注释,这是git强制要求的,防止你提交的多了,不知道每次提交的修改是什么,引号里面写注释
git status
这个时候就没有了

git push origin master
把本地仓库的提交代码推到远程仓库,origin master表示远程的master分支,这个时候你会发现报错了,

因为我们的本地仓库是刚刚新建的,并没有绑定任何远程仓库,所以git不知道往哪推,
那么我们要把本地仓库和远程仓库绑定
首先得有一个远程仓库才行,以github为例,创建一个远程仓库



这个时候远程仓库就创建好了
git remote add origin https://github.com/**********/demo.git
把本地仓库和远程仓库绑定,这里的地址写你自己的
这个时候会让你输入你的github的用户名和密码

然后自动会在远程创建一个master分支,上面的报错是网络导致的,请忽略
这时查看远程就会有test1.txt这个文件了
开发人员的必备工具Git(初级)的更多相关文章
- fir.im Weekly - 17 个提升 iOS 开发效率的必备工具
本期 fir.im Weekly 精选了一些iOS 开发工具和动画源码分享,希望每个开发者能专注效率.实用.灵感. iOS开发工具--如何优化ipa包大小 @iOS程序犭袁 推荐了关于"如 ...
- Android开发之常用必备工具类图片bitmap转成字符串string与String字符串转换为bitmap图片格式
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 博客园主页:http://www.cnblogs.com/mcxiaobing ...
- C++ //继承中的对象模型 //利用开发人员命令提示工具查看对象模型 //父类中所有非静态成员属性都会被 子类继承下去 //父类中私有成员属性 是被编译器给隐藏了 因此是访问不到 但是确实被继承下去了
1 //继承方式 2 //语法:class 子类 :继承方式 父类 3 //继承方式 三种: 4 //1.公共继承 5 //2.保护继承 6 //3.私有继承 7 8 /* 9 #include &l ...
- 如何用vs2013开发人员命令提示工具执行一个方法(一个简单的demo)
在任何一个编辑器中编写一个静态的Main方法,必须是静态且名为Main的方法,并将Main方法所在的类文件命名为yang.cs(这个名字随便命名),如图-1. 图-1 打开你的vs2013开发人员命令 ...
- Android开发和调试必备工具-SDK Tools
原文链接:http://android.eoe.cn/topic/android_sdk SDK Tools是Android SDK的一个可下载部分,它包括Android SDK的开发和调试的所有工具 ...
- 【Java】JAVA开发人员常见环境工具安装
1.安装配置JDK1.7:jdk-7u45-windows-x64.exe,环境变量配置:JAVA_HOME---[F:\1024\jdk1.7],CLASSPATH---[.;%JAVA_HOME% ...
- 每个Java开发人员都应该知道的10个基本工具
大家好,我们已经在2019年的第9个月,我相信你们所有人已经在2019年学到了什么,以及如何实现这些目标.我一直在写一系列文章,为你提供一些关于你可以学习和改进的想法,以便在2019年成为一个更好的. ...
- 怎样才能提交一个让开发人员拍手叫好的bug单
怎样才能提交一个让开发人员拍手叫好的bug单 软件测试人员写得最多的文档就是测试用例和BUG,现在测试用例和BUG都没有标准的模板,每个公司使用的缺陷管理工具都有可能不一样,如果你换了一家公司就有可能 ...
- [荐][转]为何应该使用 MacOS X(论GUI环境下开发人员对软件的配置与重用)
一周前我和 Tinyfool 闲聊苹果操作系统,都认为对于开发人员来说,苹果操作系统(MacOS)是上佳的选择.Tinyfool 笔头很快,当即就写了一篇长文章,我则笔头很慢,今天才全部码好.他的文章 ...
随机推荐
- thinter中combobox下拉选择控件(九)
combobox控件,下拉菜单控件 combobox控件在tkinter中的ttk下 简单的实现下: import tkinter from tkinter import ttk # 导入ttk模块, ...
- Python将html转化为pdf
前言 前面我们对博客园的文章进行了爬取,结果比较令人满意,可以一下子下载某个博主的所有文章了.但是,我们获取的只有文章中的文本内容,并且是没有排版的,看起来也比较费劲... 咋么办的?一个比较好的方法 ...
- GO语言.树莓派.环境安装和测试
Go是Google开发的一种静态强类型.编译型.并发型,并具有垃圾回收功能的编程语言.为了方便搜索和识别,有时会将其称为Golang 记录一下如何在树莓派上安装语言环境 第一步: 下载安装包 http ...
- maintenance.go
package, && req.Alarm == pb.AlarmType_NONE { ar, err := m.AlarmList(ctx) if ...
- bzoj3812&uoj37 主旋律
正着做不好做,于是我们考虑反着来,如何计算一个点集s的答案呢,一定是所有的方案减去不合法的方案,不合法的方案一定是缩完点后是一个DAG,那么就一定有度数为0的scc,于是我们枚举s的子集,就是说这些点 ...
- ZOJ_2314_Reactor Cooling_有上下界可行流模板
ZOJ_2314_Reactor Cooling_有上下界可行流模板 The terrorist group leaded by a well known international terroris ...
- oracle改造常见问题
一. to_char: 将数值型或者日期型转化为字符型 (string) 日期到字符操作 select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from du ...
- java 判断是否为中文字符,部分,。中文符号不能识别
public static void main(String[] args) { int i = 0; for (char c : ",.判断一个字符串是否有中文一般情况是利用Unicode ...
- 关于EffictiveC++笔记
我根据自己的理解,对原文的精华部分进行了提炼,并在一些难以理解的地方加上了自己的"可能比较准确"的「翻译」.
- C++实现离散数学的关系类,支持传递闭包运算
#include <vector> #include <cassert> #include <iostream> using namespace std; clas ...