GitHub实战系列汇总:http://www.cnblogs.com/dunitian/p/5038719.html

Linux安装git,做个记录吧(使用github提供的隐私邮箱

# git官方手册 https://git-scm.com/book/zh/v2

# 1.安装Git
sudo apt-get install git

# 2.设置用户名和邮箱(使用Github提供的隐私邮箱
git config --global user.name "Your Name"
git config --global user.email xxx+名称@users.noreply.github.com

git config --list #查看所有配置

# 3.克隆现有git仓库 (支持多种链接协议)

git clone https://github.com/lotapp/BaseCode.git

# 4.检查当前文件状态
git status #随时可以查状态


# 5.这时候你增加文件都是未跟踪的(如果之前并不存在这个文件,那么就没法跟踪了)
cp -r python/ BaseCode/


# 6.添加跟踪文件
git add xxx

# 7.检查当前文件状态
git status #现在已被跟踪,并处于暂存状态


# 8.提交更新
git commit -m "备注信息"


# 9.1修改文件
# 要查看尚未暂存的文件更新了哪些部分(跟历史版本的对比)
git diff 修改的文件

# 后一般都是先把修改后的文件,git add 一下(添加修改都是这个命令)
#git其实提供了一个便捷的方法 git commit -a -m "xxx"
git commit -a -m "test skip git add"

# 9.2删除文件 一样可以用 git commit -a -m "xxx" 来快速提交
git commit -a -m "test skip git add"


# 10.推送到远程端
git push #默认是git pull origin master,其他需要指定(修改了origin也可以用git push来默认推送到clone的那个远程仓库)

关于查看历史提交的扩展:(冲突的时候经常用)

# 查看历史提交
git log

# 常用的选项是 -p,用来显示每次提交的内容差异
git log -p -2 #查看最近两次提交

# 每次提交的简略的统计信息(应用场景:快速浏览小伙伴commit所带来的变化的时候)
git log --stat
git log --stat -p -2 #可以联合使用

--stat 选项在每次提交的下面列出所有被修改过的文件、有多少文件被修改了以及被修改过的文件的哪些行被移除或是添加了。 在每次提交的最后还有一个总结

--------------------------------------------------------------------
扩展(冲突查明细): git log --pretty=format eg:(--graph是美化输出
git log --pretty=oneline --graph #一行显示,数据量大的时候用比较方便
git log --pretty=format:"%h - %an, %ar : %s" #时间显示

如果出现冲突,可以先运行 git fetch 拉取一下远端仓库进行同步

快速版

get pull # 同步代码

get add --all # 添加新文件

get commit -a -m "注释" # 提交本次修改

get push # 推送到仓库

git checkout xxx # 撤销文件修改

--------------------------------------------------
# .安装Git
sudo apt-get install git -----------------------
# .设置用户名和邮箱
git config --global user.name "Your Name"
git config --global user.email xxx+名称@users.noreply.github.com git config --list #查看所有配置 -----------------------
# .克隆现有git仓库
git clone https://github.com/lotapp/BaseCode.git -----------------------
# .检查当前文件状态
git status #随时可以查状态 -----------------------
# .这时候你增加文件都是未跟踪的(如果之前并不存在这个文件,那么就没法跟踪了)
cp -r python/ BaseCode/ -----------------------
# .添加跟踪文件
git add --all # 添加全部文件
git add xxx -f # 添加某个被忽略的文件
-----------------------
# .检查当前文件状态
git status #现在已被跟踪,并处于暂存状态 -----------------------
# .提交更新
git commit -m "备注信息" -----------------------
# .1修改文件
# 要查看尚未暂存的文件更新了哪些部分(跟历史版本的对比)
git diff 修改的文件 # 后一般都是先把修改后的文件,git add 一下(添加修改都是这个命令)
#git其实提供了一个便捷的方法 git commit -a -m "xxx"
git commit -a -m "test skip git add" # .2删除文件 一样可以用 git commit -a -m "xxx" 来快速提交
git commit -a -m "test skip git add" -----------------------
# .推送到远程端(如果是多个远程仓库还是建议写全)
git push #默认是origin master #如果是多个远程仓库还是建议写全:(修改了origin也可以用git push来默认推送到clone的那个远程仓库)
git push origin master

# 11.同步代码
git pull
-----------------------
# 查看历史提交
git log # 常用的选项是 -p,用来显示每次提交的内容差异
git log -p - #查看最近两次提交 # 每次提交的简略的统计信息(应用场景:快速浏览小伙伴commit所带来的变化的时候)
git log --stat
git log --stat -p - #可以联合使用 --stat 选项在每次提交的下面列出所有被修改过的文件、有多少文件被修改了以及被修改过的文件的哪些行被移除或是添加了。 在每次提交的最后还有一个总结
扩展(冲突查明细): git log --pretty=format eg:(--graph是美化输出)
git log --pretty=oneline --graph #一行显示,数据量大的时候用比较方便
git log --pretty=format:"%h - %an, %ar : %s" #时间显示
-------------------------------------------------------------

扩展

1.clone指定分支git clone -b name https://github.com/lotapp/cpython.git

2.fetch更新本地仓库两种方式:(有更简单的方法可以提一下)

//方法一
git fetch origin master //从远程的origin仓库的master分支下载代码到本地的origin master git log -p master.. origin/master//比较本地的仓库和远程参考的区别 git merge origin/master//把远程下载下来的代码合并到本地仓库,远程的和本地的合并 //方法二
git fetch origin master:temp //从远程的origin仓库的master分支下载到本地并新建一个分支temp git diff temp//比较master分支和temp分支的不同 git merge temp//合并temp分支到master分支 git branch -d temp//删除temp

todo

GPG防止伪签名提交:

基本上用不到,贴几个文章课后拓展一下:

https://www.freebuf.com/news/140413.html

https://help.github.com/articles/signing-commits

https://help.github.com/articles/generating-a-new-gpg-key

https://help.github.com/articles/managing-commit-signature-verification

Git Base For Linux的更多相关文章

  1. git diff与linux diff的输出格式之unified format

    前言 前面有一篇文章<一个有些意思的项目--文件夹对比工具(一)>,里面简单讲了下diff算法之--Myers算法. 既然是算法,就会有实现,比如git diff中有Myers的实现,gi ...

  2. Git - Download for Linux and Unix

    It is easiest to install Git on Linux using the preferred package manager of your Linux distribution ...

  3. 【Linux部署 · GIT】在linux系统安装git和配置实现SSH

    领导给了一个不开放ftp的测试库,让我部署项目.拿到一个全新的环境,真是个练手的好机会. 该操作系统为:CentOs release 6.5(Final) 由于不开放ftp,所以上传下载代码是非常麻烦 ...

  4. Git使用:Linux(Ubuntu 14.04 x64)下安装Git并配置连接GitHub

    github是一个非常好的网络代码托管仓库,知晓许久,但是一直没有用起来,最近才开始使用git管理自己的文档和代码. Git是非常强大的版本管理工具,今天就告诉大家,如何在Linux下安装GIt,并且 ...

  5. Jenkins与Git持续集成&&Linux上远程部署Java项目

    一.环境搭建 1.安装所需软件 Jdk Maven Jenkins Tomcat Xshell git 以上软件去官网下载,比较简单,不一一描述了 2.安装所需的jenkins插件 Git plugi ...

  6. Git 安装 windows && linux

    一.安装: windows下安装Git: 1.下载Git:https://git-scm.com/download/win 2.安装Git:默认安装,一直回车 Linux下安装Git: yum安装: ...

  7. Git Base 操作(一)

    Git常用命令 1. 命令git init把这个目录变成Git可以管理的仓库: 2. 命令git commit把文件提交到仓库 这里需要注意的是,Git只能跟踪文本文件的改动,如txt文件,网页,所有 ...

  8. 【Git 一】Linux安装Git

    一.Git 的优势 #简单说一下 Git 的优势. 1.版本库本地化,支持离线提交,相对独立不影响协同开发. 2.支持快速切换分支方便合并,比较合并性能好. 3.分布式管理,适应不同的业务场景. 4. ...

  9. 关于 Git使用的全面总结 —— 致敬Git之父Linux

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 17.0px ".PingFang SC"; color: #454545 } p.p2 ...

随机推荐

  1. java中的定时任务小示例

    package package_1; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Timer; ...

  2. C#复习笔记(4)--C#3:革新写代码的方式(查询表达式和LINQ to object(下))

    查询表达式和LINQ to object(下) 接下来我们要研究的大部分都会涉及到透明标识符 let子句和透明标识符 let子句不过是引入了一个新的范围变量.他的值是基于其他范围变量的.let 标识符 ...

  3. laravel自定义门面

    https://learnku.com/articles/19195   关于laravel门面和服务提供者使用的一点见解,门面之词,不足之处,还请多多指教. 在laravel中,我们可能需要用到自己 ...

  4. 网络编程--使用UDP发送接收数据

    package com.zhangxueliang.udp; import java.io.IOException; import java.net.DatagramPacket; import ja ...

  5. 运行pip报错:Fatal error in launcher: Unable to create process using '"'

    参考: https://blog.csdn.net/cjeric/article/details/73518782

  6. keras中TimeDistributed的用法

    TimeDistributed这个层还是比较难理解的.事实上通过这个层我们可以实现从二维像三维的过渡,甚至通过这个层的包装,我们可以实现图像分类视频分类的转化. 考虑一批32个样本,其中每个样本是一个 ...

  7. python爬虫之线程池和进程池

    一.需求 最近准备爬取某电商网站的数据,先不考虑代理.分布式,先说效率问题(当然你要是请求的太快就会被封掉,亲测,400个请求过去,服务器直接拒绝连接,心碎),步入正题.一般情况下小白的我们第一个想到 ...

  8. python之路--字典

    一. 字典 字典是以key:value的形式来保存数据的,用{}表示 字典的增删改查 字典的增加 dic = {"意大利": "李云龙", "美国&q ...

  9. 设计模式笔记:单一职责原则(SRP, Single Responsibility Principle)

    1. 单一职责原则核心思想 一个类应该有且只有一个变化的原因. 2. 为什么引入单一职责原则 单一职责原则将不同的职责分离到单独的类,每一个职责都是一个变化的中心. 在SRP中,把职责定义为变化的原因 ...

  10. echo显示颜色

    如有转载,不胜荣幸.http://www.cnblogs.com/aaron-agu/ [;;34m hello aaron \[0m”