git使用技巧

git使用技巧

文章概览:

  • windows下git使用
  • vim编码设置
  • git ls显示中文乱码问题

windows下git使用

从网盘下载安装即可

  • 使用git连接github

1)生成本机的密钥

ssh-keygen -C 'urmyfaith.qq.com' -t rsa

2)将生存的密钥添加到github网站中

a)登陆https://github.com/settings/ssh

b)Add an SSH Key

3)测试是否可以登录github使用,添加用户名和邮箱

$ ssh -T git@github.com
$ git config --global user.email "urmyfaith@qq.com" $ git config --global user.name "urmyfaith"
$ git config --global push.default matching

4)本地git初始化

$    git init  

5) 拉取服务器项目

$ git pull  https://github.com/urmyfaith/NotesOfDjangoBook.git
或者
$ git pull git@github.com:urmyfaith/NotesOfDjangoBook.git

6) 修改,添加文件,提交

git add filname_here

git commit -m "notes_here"

7) 提交更改到服务器

git remote add origin https://github.com/urmyfaith/NotesOfDjangoBook
# also:
# git remote add origin https://github.com/urmyfaith/NotesOfDjangoBook.git
# git remote add origin git@github.com:urmyfaith/NotesOfDjangoBook.git
git push -u origin
  • 提交时候密码的问题:

如果不想每次提交都输入密码,可以更改“.git/config”文件中的url值格式为:

 url = git@github.com:[user_name]/[project_name].git
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
hideDotFiles = dotGitOnly
[remote "origin"]
url = git@github.com:urmyfaith/NotesOfDjangoBook.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master

git ignore file

To ignore file,edit:

.git\info\exclude

add the filetype you want to igonre to commit .

eg:

*.md~

git 打tag

显示历史提交

git log --pretty=oneline --abbrev-commit

给某个提交打tag

git tag v0.9 4224935

更多参考廖学峰-git-tag

你可以使用 git tag 命令来添加新标签

git tag -a v1.0 -m 'version 1.0'

可以使用 git push 命令来将标签推送到远程仓库

git push origin v1.0:v1.0

vim编码设置

(显示中文乱码问题,最后一行解决)

vimrc文件位置:

C:\Program Files\Git\share\vim

添加如下设置

set nocompatible
set number
filetype on
set history=1000
set background=dark
syntax on
set autoindent
set smartindent
set tabstop=4
set shiftwidth=4
set showmatch
set guioptions-=T
set vb t_vb=
set ruler
set nohls
set incsearch
if has("vms")
set nobackup
else
set backup
endif
set fileencodings=utf-8,gbk

git ls显示中文乱码问题

编辑

C:\Program Files\Git\etc\git-completion.bash

添加:

alias ls="ls --show-control-chars"

git view history

git log --pretty=oneline

查看某个文件的版本历史

git log --follow -p file

git rm file git删除文件

移动文件,然后从git里移除文件,再添加,最后提交。

mv file_form file_path_to
git rm file_from
git add file_path_to_full_name.
git commit -c "move file"

git 放弃本地修改

git checkout . 搜索#本地所有修改的。没有的提交的,都返回到原来的状态
git stash #把所有没有提交的修改暂存到stash里面。可用git stash pop回复。
git reset --hard HASH #返回到某个节点,不保留修改。
git reset --soft HASH #返回到某个节点。保留修改
使用命令:

git reset --hard ORIGIN/BRANCH

比如master分支:

git reset --hard origin/master

git commit –amend

修改刚才提交的commit信息

git diff

HEAD commit 版本

Index staged版本

git diff

git diff –cached (add之后的不同)

git diff –staged (add之后的不同)

git diff HEAD (commit之后的修改本地后的不同)

git diff HEAD^ HEAD (最后两次commit的不同)

加快git pull的速度

  • 先输入命令ssh -N git@gitcafe.com保持连接
  • 然后新建窗口git pull/push
  • 测试时间可以使用
x:panda zx$ time git pull
Already up-to-date.
real 0m1.043s
user 0m0.058s
sys 0m0.054s

参考:

git的使用总结的更多相关文章

  1. Git 子模块 - submodule

    有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你 独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在 一个项目中使用另 ...

  2. Git 在团队中的最佳实践--如何正确使用Git Flow

    我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为 ...

  3. Git与Repo入门

    版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作... 一.原始版本控制 最原始的版本控制是纯手工的版本控制:修改文 ...

  4. Git Bash的一些命令和配置

    查看git版本号: git --version 如果是第一次使用Git,你需要设置署名和邮箱: $ git config --global user.name "用户名" $ gi ...

  5. 在Ubuntu 16.10 安装 git 并上传代码至 git.oschina.net

    1. 注册一个账号和创建项目 先在git.oschina.net上注册一个账号和新建一个project ,如project name 是"myTest". 2.安装git sudo ...

  6. 史上最详细git教程

    题外话 虽然这个标题很惊悚,不过还是把你骗进来了,哈哈-各位看官不要着急,耐心往下看 Git是什么 Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别 SVN是集中式版本控制 ...

  7. [版本控制之道] Git 常用的命令总结(欢迎收藏备用)

    坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...

  8. 【解决方案】Myeclipse 10 安装 GIT 插件 集成 步骤 图解

    工程开发中,往往要使用到集成GIT ,那么下面说说插件安装步骤 PS:以Myeclipse 10 为例,讲解集成安装步骤. ----------------------main------------ ...

  9. git 命令

    切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm  ...

  10. git亲测命令

    一.Git新建本地分支与远程分支关联问题 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream bra ...

随机推荐

  1. 兼容chrome和ie的wav音乐播放(Ie7 Ie8 Ie9 均测试过 )

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. SharePoint 2013 创建Web Application

    今天继续SharePoint 2013 的探索之旅,之前几篇文章分析了SharePoint 2013的物理拓扑结构,安装,以及逻辑体系结构.在这篇文章中,我将继续Step By Step形式演示如何在 ...

  3. Happy Java:定义泛型参数的方法

    在平时写代码时,可以自定义泛型类.当使用同一类型的对象时,这是非常有用的,但在实例化类之前,我们不知道它将是哪种类型. 下面让我们定义一个使用泛型参数的方法.首先,在定义一个类用到泛型时,必须使用特殊 ...

  4. nexus7 1代 刷4.2.2+root[转]

    下面和大家分享一下刷机方法.(该刷机方法根据论坛有小改动)刷机前记得备份...刷机前准备:一.准备工具1.N7电脑驱动(usb_driver_r06_windows.zip)2.刷机工具(N7 fas ...

  5. [Golang] 从零开始写Socket Server(1): Socket-Client框架

    版权声明:本文为博主原创文章,未经博主允许不得转载. 第一次跑到互联网公司实习 ..感觉自己进步飞快啊~第一周刚写了个HTTP服务器用于微信公共号的点餐系统~ 第二周就直接开始一边自学Go语言一边写用 ...

  6. Quartz 任务调度框架之Hello World

    0x01 什么是Quartz? Quartz是一个完全由java编写的开源作业调度框架. 0x02 实战Quartz Hello World 创建Maven项目,POM 文件配置如下: <pro ...

  7. Struts2对值的推断

    目的是想将jsp中的input输入: <input class="inputstyle" type="text" value="<s:pr ...

  8. Linux学习笔记(九)

    <span style="font-size:18px;">本人使用的是centos 因为用使用些特殊命令.不得不改动系统的时间这里总结例如以下: date 查看系统时 ...

  9. angular学习笔记(三十)-指令(7)-compile和link(2)

    继续上一篇:angular学习笔记(三十)-指令(7)-compile和link(1) 上一篇讲了compile函数的基本概念,接下来详细讲解compile和link的执行顺序. 看一段三个指令嵌套的 ...

  10. 解决jar格式文件,双击不能直接运行问题

    前提:  安装了JDK 步骤: 1.先右击jar文件,打开方式->选择默认程序->浏览,选中jre下bin文件中javaw.exe(比如我的javaw.exe在C:\Program Fil ...