使用环境:ubuntu14.04,git2.7
首先,你得先在github上注册好自己的git账号;
其次,在ubuntu下刚刚装好了git之后;
完成以上两步,就可以开始配置了;
————————————我是可爱的分割线——————————————–
1, 配置git
1.1,先配置别名操作与远程github上的用户账号:
cd #切换到当前用户家目录下
1.2,接下来打开或新建 git配置文件:
vim .gitconfig #创建git配置文件
注意因为这里是在当前用户家目录下生成的配置文件,所以只要是在当前用户操作下,所有git本地仓库都生效这个配置,非常方便。
这个 .gitconfig可能原来不存在,所以vim新建了也不要奇怪。
1.3,写入如下配置:
[alias]
last = log -1
co = checkout
cm = commit -m
br = branch
st = status
lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
pu = push origin master
ck = checkout
[user]
email = xxxxxxxxx@outlook.com
name = ulin
这里user里的内容可以自行更改,email改成你的github上的登陆账号邮箱。
1.4,到1.3为止基本配置结束,如果想不是对当前用户所有git仓库生效,只想对某个git仓库生效,可以在相应git仓库下编辑 .git/config文件。
2,忽略特殊文件
2.1 如果想要忽略一些编译文件等,在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。
2.2 不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了。所有配置文件可以直接在线浏览:https://github.com/github/gitignore
2.3 最后一步就是把.gitignore也提交到Git,就完成了!
2.4 遇到一个场景:为什么我增加了 .gitignore 里的规则却没有效果?
这是因为我们误解了 .gitignore 文件的用途,该文件只能作用于 Untracked Files,也就是那些从来没有被 Git 记录过的文件(自添加以后,从未 add 及 commit 过的文件)。也就是说如果你之前git add 了某个 xxx.pyc文件之后再去更改.gitignore文件是没有效果的,怎么办?
- 2.4.1从 Git 的数据库中删除对于该文件的追踪:
git rm --cached xxx.pyc
2.4.2 把对应的规则写入 .gitignore,让忽略真正生效,即更新 .gitignore 忽略掉目标文件,也就是写入*.pyc
2.4.3 添加(add)并提交(commit).gitignore文件。此时用git status检验会发现git已不跟踪*.pyc文件,Bingo! (PS:其实add 之后,用git status查看就已经可以看出结果了)
2.4处参考链接:https://segmentfault.com/q/1010000000430426
3,本地基本配置完了之后(1,2),准备推送到github上的远程仓库:
first:本地生成密钥,填到github上。这样你的github就能识别你的计算机了;这里要注意的一步:
ssh-keygen -t rsa -C "youremail@example.com"
这个命令,如果你之前在机器上配置过git(这时已经存在了.ssh/),而且你的邮箱改了;那么要先删除.ssh/文件夹,然后再重新创建;
rm -rf .ssh/
参考链接:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374385852170d9c7adf13c30429b9660d0eb689dd43a000
second:添加远程库。这里参考下自己的博文: (二)git 推送到远程仓库http://blog.youkuaiyun.com/happy_bigqiang/article/details/50909787
4,删除github上的repository
4,某些原因,比如不小心把公司机密传到github上了,就只能删github上的repository:
具体操作选定你要删的repository,点击setting选项,注意有两个settings,不是右上角的那个,是在和code同一行的末尾的那个。点完之后往下拉页面,看到Delete this repository,点击进去,写上你要删的repository的真名就可以了。
5,撤销误操作add,commit之后,如果git push ,就回天乏术,参照第3
5.1,如果在git commit 之后后悔了:
- 5.1.1那么可以 先查看你想要会退的版本号:
git log #如果你按第1步配置了git,就可以方便的用git lg来查看
- 5.1.2 记住你想要的版本号的前几位,比如是a1234,再运行如下命令:
git reset --hard a1234
此时你的文件就回退到a1234了,a1234之后提交的改动都会消失。之后就照常工作就可以了。
注意!!!:此法可用的前提条件是,必须是没用git push 到远程仓库之前才能用。
5.2,如果是改动之后后悔了,直接:
git checkout -- 文件名 # 注意-- 与文件名之间有一个空格才可以
用git status 查看就知道了,这个方法git会提示,简单。
5.3,如果是改动之后,并且git add 之后才后悔了,可以:
git reset HEAD 文件名
这样就放弃了提交到暂存区的改动,之后可以根据个人需要是否要执行5.2 步,这个方法git 也有提示,也简单。