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. 关于PHP批量图片格式转换的问题--本文转成webp, 其他过程格式一样

    最近要把项目中的图片全部生成webp格式, 过程整理一下,    (直接存在本地,或者图片链接存在数据库都可以看看) 首先,肯定是批量处理, 一个php处理不了这么多, 会爆内存的, 个人建议用aja ...

  2. vue路由的知识点

    this.$router.push({name:'login',query:{name:'ww',age:18}}) 传数据 this.$route.query 拿数据 meta:{ "dl ...

  3. opencv2\core\cuda.hpp(106): error C2059: 语法错误:“常量”

    在 cuda.hpp 中, virtual void free(GpuMat* mat) = 0;   -> virtual void _free(GpuMat* mat) = 0;

  4. lumen 5.6 设置APP_KEY为32位长的随机字符串

    在 App\Console\Commands下 添加以下内容的KeyGenerateCommand.php文件 <?php namespace App\Console\Commands; use ...

  5. Azure系列2.1.3 —— BlobEncryptionPolicy

    (小弟自学Azure,文中有不正确之处,请路过各位大神指正.) 网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少.这次由于公司项目需要使用Azure,所以对Azure的一些学习 ...

  6. 5款Python程序员高频使用开发工具推荐

    很多Python学习者想必都会有如下感悟:最开始学习Python的时候,因为没有去探索好用的工具,吃了很多苦头.后来工作中深刻体会到,合理使用开发的工具的便利和高效.今天,我就把Python程序员使用 ...

  7. VS Code & MacOS & Zsh

    VS Code & MacOS & Zsh https://code.visualstudio.com/docs/setup/mac solution OK bug $ cat .zs ...

  8. DOSD用scratch的方式训练通用目标检测,性能很高

    推荐一篇今年ICCV上基于DenseNet的general object detection的工作.这是目前已知的第一篇在完全脱离ImageNet pre-train模型的情况下使用deep mode ...

  9. codeforces616B

    Dinner with Emma CodeForces - 616B Jack decides to invite Emma out for a dinner. Jack is a modest st ...

  10. codeforces158D

    Ice Sculptures CodeForces - 158D The Berland University is preparing to celebrate the 256-th anniver ...