一、流程

$ git init    # 创建一个新的仓库

sublime 编写文本,不要使用win自带文本编辑器

$ git add file1 # 将文件添加到暂存区
$ git add file2 $ git commit -m "what is the change" # 把文件提交到当前分支

  

二、版本管理

$ git log # 查看历史纪录

$ git reset --hard HEAD~1    # 退回上一个版本;HEAD^表示上一个 D等价于HEAD~1

$ git reset --hard 67c02f62   # 回到未来(任意一个版本)

$ git status # 查看状态
$ git diff # 比较不同

  

删除文件:

$ git rm new_file # 删除一个文件

$ git commit -m "delete"   # 提交

  

三、远程仓库

3.1 配置:

在cmder下

$ ssh-keygen -t rsa -C "myemail@163.com"

用户主目录里找到.ssh目录,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,id_rsa.pub是公钥。在github上打开settings 添加SSH key,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容。

3.2 创建:

在github上新建相同名仓库,在本地仓库位置下

$ git remote add origin git@github.com:czn1009265565/gitDemo.git

# 添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。

$ git push -u origin master

# 把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。
# 由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

  

3.3 推送:

$ git push origin master:master  # 将本地已提交的master分支最新修改提交到GitHub

$ git push  # 上述命令可简写  

  注意点:在团队协作git版本管理中,上传代码冲突很常见,即因为远程版本和本地版本不一致,此时需要先git pull。当然,在开发中我们需要用到开发分支。

  

3.4 从远程库克隆:

$ git clone git@github.com:czn1009265565/tensorflow.git

  

常用命令

$ git push <远程主机名> <本地分支名>:<远程分支名>

$ git pull <远程主机名> <远程分支名>:<本地分支名>

$ git branch 用于列出、创建、删除分支
git branch # 列出
git branch dev # 创建dev分支
git branch -d dev # 删除分支
git branch -r # 查看远程分支
git branch -r -d origin/dev # 删除远程分支 $ git checkout -b dev # 创建并切换分支

$ git branch dev && git checkout dev $ git checkout master # 返回master分支
$ git merge dev # 合并dev分支,用于合并指定分支到当前分支(master)
若有冲突,手动修改文件后,git add

  

Tag:

项目的版本管理中,每当一个release版本发布时,需要做一个记录,以便以后需要的时候能查找特定的版本,这时候就用到tag这个功能.

$ git add .
$ git commit -m “fixed some bugs”
$ git tag -a 1.0.0 -m “Release version 1.0.0″ $ git push origin master
$ git push origin --tags

  

git 28原则的更多相关文章

  1. git合并原则

    目前实验结果为: 假设有master和branch1,用master合并branch1时(在master分支中执行git merge branch1): 1.在同一个地方,master做了修改,bra ...

  2. python 线程,进程28原则

    基于函数实现 from threading import Thread def fun(data, *args, **kwargs): """ :param data: ...

  3. tf 常用函数 28原则

    一个tensorflow图由以下几部分组成: 占位符变量(Placeholder)用来改变图的输入. 模型变量(Model)将会被优化,使得模型表现得更好. 模型本质上就是一些数学函数,它根据Plac ...

  4. matplotlib 28原则

    记下各个简易模板,方便ctrl+c和ctrl+v 子图: import numpy as np import matplotlib.pyplot as plt x = np.array(range(1 ...

  5. 天天都在用Git,那么你系统学习过吗?(一)学习过程

    你系统学习Git了吗? 使用Mac编程的好处,不是因为Mac长得好看 Git内容学习准备 如果你还没有用Git,就不要写代码了. GitHub仓库的使用. 新员工入职的时候,会让他先用一周的时间去学习 ...

  6. Salesforce学习之路(四)利用Jenkins和Git实现Salesforce的CI/CD功能

    上文提到,基于CRM的二次开发是必不可少的,但是在实际项目中CI/CD是不可忽略的一个重要部分,与传统的Java,Python项目不同,如果对Salesforce进行持续集成和持续部署呢? 结合找到的 ...

  7. GIT学习——天天都在用Git,那么你系统学习过吗?(学习过程)

    你系统学习Git了吗? 学习圣思园张龙老师的Git课程. 使用Mac编程的好处,不是因为Mac长得好看 Git内容学习准备 如果你还没有用Git,就不要写代码了. GitHub仓库的使用. 新员工入职 ...

  8. git_sop 脚本使用说明

    tags : git 前言 脚本下载地址: git是功能非常强大的版本管理工具,同时它带来的是学习成本的上升.最近我们团队的部分项目采用了git进行版本管理,一部分小伙伴对于git使用不是很熟悉.一方 ...

  9. 【实习记】2014-08-20实习的mini项目总结

        实习项目总结文档 项目介绍 项目逻辑很简单,只有几个页面,只能登录,查看,支付和退款.主要作用是熟悉C++的cgi的web服务开发方式. 项目页面截图 图一:登录页面 图二:买家查看 图三:买 ...

随机推荐

  1. java 基础02 打包package

  2. IntelliJ IDEA下自动生成Hibernate映射文件以及实体类

    来自:https://blog.csdn.net/chenyunqiang/article/details/81026823 1.构建项目并添加项目结构配置以及配置初始参数 1.1.如图将基本的架子搭 ...

  3. Python 学习 第七篇:函数1(定义、调用和变量的作用域)

    函数是把一些语句集合在一起的程序结构,用于把复杂的流程细分成不同的组件,能够减少代码的冗余.代码的复用和修改代码的代价. 函数可以0个.1个或多个参数,向函数传递参数,可以控制函数的流程.函数还可以返 ...

  4. React之父子组件传递和其它一些要点

    react是R系技术栈中最基础同时也是最核心的一环,2年不到获取了62.5k star(截止到目前),足可见其给力程度.下面对一些react日常开发中的注意事项进行罗列. React的组件生命周期 r ...

  5. Centos下MooseFS(MFS)分布式存储共享环境部署记录

    分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连,分布式文件系统的实际基于客户机/服务器模式.目前 ...

  6. 数组与字符串三(Cocos2d-x 3.x _Array容器)

    "程序=数据结构+算法" 在面向对象的语言中,诸如数组.堆栈.队列等的结构都被封装成了特定的类,按照特定数据结构的算法设计起来,这就是容器类. Cocos2d-x中,能使用的容器类 ...

  7. ajax 异步请求

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  8. PHP压力测试使用apache的ab工具和Linux的time命令

    ab工具是apache自带的一个压力测试工具,可以在apache的安装路径下的bin目录下找到,我的环境中是在/usr/local/apache/bin/目录下: ab 压测主要使用两个参数: -n ...

  9. PHP加密与编码技术

    md5加密: string  md5( string $str [,bool $raw output=false]) md5加密方法用的挺多,有两个参数,第一个参数是要加密的字符串,第二个参数默认为f ...

  10. HDU 2043 密码

    http://acm.hdu.edu.cn/showproblem.php?pid=2043 Problem Description 网上流传一句话:"常在网上飘啊,哪能不挨刀啊-" ...