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. MySQL和ORACLE、SQL Server、PostgreSQL相比

  2. cucumber java从入门到精通(3)简单实现及断言

    cucumber java从入门到精通(3)简单实现及断言 上一节里我们定义了step的java代码实现文件,step就是测试步骤及断言的集合,我们先定义出来,以后可以驱动开发以及在持续集成时重用. ...

  3. DVWA安装——一个菜鸟的入门教程

    DVWA的安装非常简单: 1.更改config/config.inc.php文件中的数据库配置信息 2.访问setup.php,点击create/reset database即可 3.默认用户名/密码 ...

  4. 让MySQL在美国标准下运行

    [美国标准下运行的MySQL会有哪方面的调整] 我不得不说,这里有点标题党了:事实上我想说的就是--ansi模式下启动mysqld进行,但是这个ansi我没有找到更好的译文,就给译成了“美国标准”了. ...

  5. matlab中xlsread函数的bug

    在使用[num txt data]=xlsread('filename')时.num存所有数值型数据,非数值型用NaN表示,txt存非数值型数据,数值型数据的位置为空. 如果filename中的第一行 ...

  6. 《深入理解jvm》笔记---第六章

    类文件结构 1. Java一次编写,到处执行的基石:    Java编译产生的是字节码(bytecode).sun公司和其它虚拟机提供商公布各个平台上的虚拟机.这些虚拟机能够加载和执行这些与平台无关的 ...

  7. [MeetCoder] Count Pairs

    Count Pairs Description You are given n circles centered on Y-aixs. The ith circle’s center is at po ...

  8. DBUtils查找最大的ID总是返回0

    1.实体: public class Order { private int id; private Date orderDate; public int getId() { return id; } ...

  9. Java常考面试题(五)

    序言 好好努力. ---WH 一.Iterator和ListIterator的区别是什么? 自我解答: Iterator是针对所有collection来使用的,而看名字ListIterator,顾名思 ...

  10. ios之清除cell缓存,解决cell的重用问题。

    tableView表格中的cell有重用机制,这是一个很好的东西,可以避免开辟很多的空间内存.但是有时候我们不想让它重用cell,,可以用以下的代码解决. 将这个代码放在: - (UITableVie ...