git学习笔记

参考廖雪峰的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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Git教程 一、Git简介 1.1. Git的诞生1.2.集中式的vs分布式 二、安装Git 三、创建版本库 四、...
    曹渊说创业阅读 4,518评论 0 2
  • ----------------- Git 学习 ------------------ Git 简介 Git...
    Junting阅读 6,682评论 0 3
  • 3、数据操作 简单查询 语法解析: *表示表中的所有列; 列名可以选择若干个表中的列名,各个列名用逗号隔开; 表达...
    闲不住的李先森阅读 2,895评论 0 1
  • 大概下个月我就会出发去广州生活两年,以前买了一些书,不能带到广州去,所以就送给BVM社群的大家。 这一次送四本猫老...
    阿涛有点帅阅读 3,315评论 14 11
  • 侯明明:国画山水-《花里人家》 尺寸:100cmx50cm(4.5平尺)钤印:侯明明创作时间:2017.10.6裱...
    4182204ab311阅读 2,563评论 1 8

友情链接更多精彩内容