window上使用GIT的个人经验(入门级)
0.安装
使用google上的msysgit
http://code.google.com/p/msysgit/downloads/list
尽量用最新版的吧
1.KEY
关于 key,.ssh里面的key是与服务器通信用的,其他什么用,也不一定要用email,其实随便用什么都可以。
github.com上那个
ssh-keygen -t rsa -C "email"
有误导的成分,其实引号里面的不一定要email随便都可以,只要把本地.ssh/id_rsa.pub里面的东西复制到github里面的public ssh key就可以了。
2.大小区分的问题
开始在github上建了个项目,在本地使用了$ git remote add git@github.com:{user}/{project}.git,结果因为输入是大小写跟服务器上不一致,导致找不到项目,郁闷啦,最郁闷的是,在windows上重新按正确的大小写add一次,提示已经存在,最后的解决办法是先删除,然后在添加
git remote rm origin
3.Bash粘贴
默认情况下Git Bash居然不支持粘贴,在我输入api key的时候最郁闷,后来解决方法是在Bash窗口上点右键 选择Properties把QuiteEditMode,InsertMode复选框勾上。
4.使用GitHub.com服务器
开始的时候以为设置加密就可了,原来还有一个apiKey和用户输入
也就是在config里面配置github.com里的用户名和邮箱
$ git config --global github.user "youruser"
$ git config --global github.token yourtoken(在GitHub上的account settings>account admin >>api token那串字符)
配置好了,可以通过
$git config --list查看。
5.关于VIM窗口
开始用git commit 提交的时候是用 -m “message”的
后来直接用git commit 回车后弹出一个窗口,后来才知道是linux下的文本编辑器
郁闷的是半天退出不出来,baidu,google一番,
进入之后是VIM的普通模式,按 i 键,进入INSERT模式,这是可以输入message了。
输入完成之后,按ESC键进入命令模式 ,输入冒号(在窗口下面显示),然后输入x,回车就OK了。
其实可以用记事本代替vim,
输入如下配置:
git config --global core.editor C:/windows/notepad.exe
6.清楚Bash里面的历史记录
其实就是Linux清楚历史命令,直接输入$ history -c
7.关于Tag
打tag很简单,所谓“会者不难难者不会”,直接使用git tag -a tagname -m“mesage”
打完tag要显示的push,使用命令git push origin tangname,这样别人才能看到
切换到tag下面用git checkout tagname,
删除tag:git tag -d tagname
远程删除:git push origin :refs/tags/tagname
8.关于Branch
git branch 不带参数:列出本地已经存在的分支,并且在当前分支的前面加“*”号标记
git branch -r 列出远程分支
git branch -a 列出本地和远程分支
git branch BranchName 创建新的 本地 Branch
git branch -d Branchname 删除branch
git branch -d -r Branchname 删除远程branch(例git branch -d -r origin/aa)
git push <remote repository> <local branch> 把本地branch 推送到远程服务器
error: dst refspec notmaster matches more than one.
That's because I had a tag with the same name as the branch. This was a poor choice on my behalf and caused the ambiguity. So in that case:
$ git push origin :refs/heads/notmaster
http://stackoverflow.com/questions/2003505/how-do-i-delete-a-git-branch-both-locally-and-in-github
9.关于GITK
推荐一篇好的文章
http://lostechies.com/joshuaflanagan/2010/09/03/use-gitk-to-understand-git/
10.返回命令窗口
以前一直很郁闷,输入了git log之后不知道怎么返回到命令窗口,就直接关闭整个窗口,
今天用git show tagname也出现了这个问题,经过摸索发现其实很简单
输入q,其他键盘会继续显示剩余log(如果有的话)
也就是Linux的退出命令
11.文件还原
用了一段时间发现文件还原很重要,之前不知道怎么弄,装了TortoiseGit用上面的Revert菜单。
其实用GIT命令是这样滴:
a,如果文件修改了但是没有提交(commit),直接用git checkout -f
b,如果修改了并提交了,
可以用 git revert HEAD
可以用git reset --hard HEAD
fatal: git clone could not read password for
git config --global core.askpass /usr/libexec/git-core/git-gui--askpass
Git中文使用说明: http://gitbook.liuhui998.com/
来自:http://www.cnblogs.com/visi/archive/2011/09/07/2169938.html
window上使用GIT的个人经验(入门级)的更多相关文章
- 如何在Window上使用Git
开始的时候同事只给了一个地址,类似这样:git@111.111.1.1:ABCDEF (1)如何在Windows上使用Git 有一篇博客不错:http://www.tuicool.com/articl ...
- window 上创建 .gitignore文件
由于 git默认不上传空文件夹,如果需要上传空文件夹,那么需要这样上传空文件,官方给出这样的做法~~ (需要创建.gitignore文件) 在linux 上比较好操作了,这里说下在window 上 创 ...
- Eclipse上安装GIT插件EGit及使用
一.Eclipse上安装GIT插件EGit Eclipse的版本eclipse-java-helios-SR2-win32.zip(在Eclipse3.3版本找不到对应的 EGit插件,无法安装) E ...
- window上利用pip安装pandas
官网推荐的是直接使用Anoconda,它集成了pandas,可以直接使用.安装挺简单的,有windows下的安装包.如果不想安装庞大的Anoconda,那就一步一步用pip来安装pandas.下面我主 ...
- 如何在服务器上搭建git服务器
参考文章: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770 ...
- 在window上安装pandas
之前在ubuntu上安装pandas,用的easy_install.这次在window上同样方法装遇到"unable to find vcvarsall.bat",看一些网上帖子好 ...
- windows上配置git
windows上配置git1.下载mysisigit进入http://msysgit.github.io/,下载,安装,下一步下一步即可. 2.下载tortoisegit进入http://downlo ...
- Eclipse上安装GIT插件EGit
一.Eclipse上安装GIT插件EGit Eclipse的版本eclipse-java-helios-SR2-win32.zip(在Eclipse3.3版本找不到对应的 EGit插件,无法安装) E ...
- 在LINUX上创建GIT服务器【转】
转自:http://blog.csdn.net/xiongmc/article/details/9176785 如果使用git的人数较少,可以使用下面的步骤快速部署一个git服务器环境. 1. Cli ...
随机推荐
- PHP 递归创建目录
/* 用迭代的方法递归创建目录 其实在PHP5.0.0之后mkdir就已经能递归创建目录了. 这里主要是自己学习迭代,所以拿创建级联目录开刀了. 开发中应该写mkdir('./a/b/c/d/e',0 ...
- 【prism】前期准备
在网上下了prism框架源码,目前最新版本为4.1,其中包含的内容如下: 其中包含三类文件: 1.类似于Desktop only-Prism Library.bat的批处理文件,用来打开相应的Pris ...
- SLua
安装 1.下载最新版,将Assets目录里的所有内容复制到工程中,对于最终产品,可以删除例子,文档等内容,如果是开发阶段则无所谓. 2.等待unity编译完毕,如果一切顺利的话,将出现SLua菜单,点 ...
- CODEVS 2055 集合划分
[题目描述] 对于从1到N(1<=N<=39)的连续整数集合,划分成两个子集合,使得每个集合的数字之和相等. 举个例子,如果N=3,对于{1,2,3}能划分成两个子集合,他们每个的所有数字 ...
- js replace in multi-line string
.replace(/{id}/g, '_' + counter);
- 学习lamda表达式
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.L ...
- makefile懒人版(单个文件编译)
.PHONY:clean all CC=gcc CFLAGS=-Wall -g ###replace your bin BIN=1 2 3 4 all:$(BIN) %.o:%.c $(CC) $(C ...
- JS数组整理
1. 检测数组的方法: 1. instanceof[操作符]: var arr = []; console.log(arr instanceof Array);//true 1. instanceof ...
- 输出排名第k的法雷级数的值;
#include<cstdio> #include<cstring> using namespace std; int k,n; void dfs(int a,int b,in ...
- ASP.NET MVC中HttpContext, HttpContextBase, HttpContextWrapper联系
ttpContext HttpContext是最原始的ASP.NET Context. MVC的目的之一是能够单元测试.HttpContext没有base class,并且不是virtual,所以不能 ...