一、流程

$ 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. 五年.net程序员Java学习之路

    大学毕业后笔者进入一家外企,做企业CRM系统开发,那时候开发效率最高的高级程序语言,毫无疑问是C#.恰逢公司也在扩张,招聘了不少.net程序员,笔者作为应届生,也乐呵呵的加入到.net程序员行列中. ...

  2. spring boot 集成Druid

    Druid是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB ...

  3. jQuery中.html(“xxx”)和.append("xxx") 的区别

    append是追加,html是完全替换比如<p id="1"><p>123</p></p> $("#1").ht ...

  4. 系统、决策、控制研究系列(SSDC)

    本类目主要介绍的书籍来自springer的系列书籍中的一本,对于该系列书籍介绍如下: “系统.决策及控制研究”(SSDC)系列涵盖了在广泛认知的系统.决策及控制的各个领域的快速.最新和高质量的最新发展 ...

  5. 最近新明白的SQL小知识

    1.partition by和order by 先看三个小需求: ①查询出各个类编号的书本的数量. select count (类编号) as 数量, 类编号 from Books group by ...

  6. week3-构造一个简单的linux系统

    潘恒  原创作品转载请注明出处  <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.gdb跟踪调试内核 ...

  7. Junit4使用实验报告

    一.题目简介 Junit4的使用及求和测试. 二.源码的github链接 https://github.com/bjing123/test-/blob/master/Arithmetic.txt ht ...

  8. SQL之SELECT语句执行顺序及子句功能

    1.select 语句的执行顺序 SELECT a.id,a.`product_name`,a.`agreement_copies` i,b.id as statusId from `opmp_pro ...

  9. PAT 1006 换个格式输出整数

    https://pintia.cn/problem-sets/994805260223102976/problems/994805318855278592 让我们用字母B来表示“百”.字母S表示“十” ...

  10. Linux MYSQL:dead but pid file exists

    MYSQL dead but pid file exists问题 - CSDN博客https://blog.csdn.net/shilian_h/article/details/38020567 Er ...