git学习笔记

2016-08-22  本文已影响0人  吴_永健

参考廖雪峰的Git的教程
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

1.创建仓库

右键 > Git Bash here

-显示当前目录

$ pwd

-初始化,变成Git可管理的仓库

$ git init

2.添加到仓库

把文件放在仓库下,
$ git add readme.txt
可以多次add,最后
$ git commit -m "xxx"
xxx 本次提交说明

3.查看修改
-当前状态

$ git status

-查看不同

$ git diff xxx.txt

4.版本回退
-查看历史版本信息

$ git log

-只显示版本号

$ git log --pretty=oneline

-版本回退

HEAD表示当前版本
上一版本,
$ git reset --hard HEAD^
指定版本,
$ git reset --commit_id

-回到最新版本

查看历史操作指令
$ git reflog

-当前文件内容

$ cat xxx.txt

5.撤销修改
-修改工作区,未添加到暂存区(没有 add)

$ git checkout -- xxx.txt

-已添加到暂存区,未提交(没有commit)

$ git reset HEAD xxx.txt
$ git checkout -- xxx.txt

-已提交到仓库,未推送到远程库,直接版本回退
6.删除文件
-删除版本库中的文件

$ git rm xxx.txt
$ git commit -m "remove"

-从版本库中恢复误删文件

$ git checkout -- xxx.txt

7.创建GiHub远程仓库

$ ssh-keygen -t rsa -C "youremail@example.com"

-在GitHub上新建 SSH key 将 id_rsa.pub 复制到 Key 输入框
8.添加远程库
-在 GitHub 上添加新仓库,Create repository
-关联仓库

$ git remote add origin git@github.com:wanderwuuu/git.git

-将本地仓库推送到 GitHub ,第一次推送时加上 u ,将本地所有分支与远程所有分支关联起来

$ git push -u origin master

-第一次 push 或 clone 时会出现 SSH 警告, 输入 yes 即可
9.从远程库克隆

$ git clone git@github.com:wanderwuuu/gitskills.git

10.创建与合并分支

查看分支:$ git branch

创建分支:$ git branch <name>

切换分支:$ git checkout <name>

创建+切换分支:$ git checkout -b <name>

合并某分支到当前分支:$ git merge <name>

合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,
而 fast forward 合并就看不出来曾经做过合并。

删除分支:$ git branch -d <name>

如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name> 强行删除。

11.解决分支冲突 ,查看分支合并图

$ git log --graph --pretty=oneline

12.暂存当前状态,解决Bug
-暂存当前状态

$ git stash

-查看 stash 历史

$ git stash list

-恢复之前状态

$ git stash pop

13.多人协作
-查看远程库信息

$ git remote -v

-从本地推送分支

$ git push origin branch-name

-在本地创建和远程分支对应的分支

git checkout -b branch-name origin/branch-name

-push 失败,先 pull

$ git pull

-pull 失败 ,创建本地 dev 分支与远程 origin/dev 分支的链接

$ git branch --set-upstream dev origin/dev

14.标签管理
-创建标签

当前分支
$ git tag v1.0
指定分支
$ git tag v1.0 -commit_id
查看标签
$ git tag
查看标签信息
$ git show <tagname>
指定标签信息
$ git tag -a <tagname> -m "blablabla..."

-操作标签

推送一个本地标签
$ git push origin <tagname>
推送全部本地标签
$ git push origin --tags
删除本地标签
$ git tag -d <tagname>
删除远程标签
$ git push origin :refs/tags/<tagname>

15.忽略文件

编写.gitignore文件
配置文件:https://github.com/github/gitignore

16.配置别名

$ git config --global alias.st status
上一篇下一篇

猜你喜欢

热点阅读