2.git 跟着廖雪峰git教程 敲一遍

2018-12-13  本文已影响0人  wudimingwo
创建本地仓库
git init

查看
git status

从工作区推到缓存区域(没有时间上的维度)
git add .

从缓存区推到 本地仓库(产生时间维度, 产生版本)
git commit -m "add 1"

对比版本库和工作区的文件, 查看修改的内容
git diff

查看版本库时间维度上的各个版本, 查看commit 信息
git log

更简洁版本
git log --graph --pretty=oneline --abbrev-commit

回到时间轴上的上一个版本
git reset --hard HEAD^

回到上上个版本
git reset --hard HEAD^^

回到前100个版本
git reset -hard HEAD~100

q是退出某个状态.

查看命令历史
git reflog

查看工作区和版本库里面最新版本的区别
git diff HEAD -- readme.txt

撤销工作区的修改,跟暂存区保持一致,
(如果暂存区没文件,就和版本库保持一致.)
git checkout -- "readme.txt"

让暂存区的变成版本库里的.
git reset HEAD readme.txt

上面两个操作,相当于把数据的流向更改了一下

删除文件 
rm test.txt


创建SSH Key
 ssh-keygen -t rsa -C "youremail@example.com"

默认目录
C:\Users\user\.ssh

跟远程仓库进行连接
git remote add origin git@github.com:michaelliao/learngit.git

把本地库的内容推送到远程
 git push -u origin master

-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

创建并切换新分支
$ git checkout -b dev

创建分之
$ git branch dev

切换分之
$ git checkout dev

查看分支
$ git branch

查看远程分支
$ git branch -r

合并分支
$ git merge dev

删除分支
$ git branch -d dev

合并时禁用 fast forward 模式
能留下分支的痕迹
git merge --no-ff -m "merge with no-ff" dev

把当前工作现场临时“储藏”起来
不会放进版本库
git stash

查看临时储藏
git stash list

恢复储藏
git stash apply

删除储藏
git stash drop

推荐用这个:恢复+ 删除储藏
git stash pop

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

查看远程库的信息
git remote

查看远程库的信息,查看详细信息,
git remote -v

推送分支
git push origin master
推送另一分支
git push origin dev

获取远程分支
git fetch origin dev

创建与远程分支对应的本地分支
 git checkout -b dev origin/dev(如果没有上一句,这一句会报错.)

创建本地dev 和 origin/dev的连接
$ git branch --set-upstream-to=origin/dev dev





git commit之后进入vim(vi)界面,如何退出
esc , shift + z, 2次

github添加ssh key之后push还要输入账号密码的解决方法
别用http, 用git开头的仓库地址.
用git协议.

我想更改协议,重新设定仓库地址
github常见操作和常见错误!错误提示:fatal: remote origin already exists.

1、先输入 git remote rm origin
2、再输入 git remote add origin git@github.com:djqiang/gitdemo.git 就不会报错了!

拉取远程分支报错,
git 拉取远程分支报错 fatal: 'origin/dev' is not a commit and a branch 'dev' cannot be created from it

$ git pull
$ git checkout -b dev origin/dev

git 拉取远程分支到本地
master对应master 分支对应分支.

git init
git remote add origin git@github.com:wudimingwo/test4.git
git fetch origin dev
git checkout -b dev origin/dev  (如果没有上面那一句这一句是不会有效果的.)

git 相关常用操作指令
详解git fetch与git pull的区别
git fetch origin dev 相当于获取远程的分支 但不会和本地的分支merge
如果没有相应本地的分支, 也不会自动创建.
而 git pull origin dev 相当于 git fetch + git merge

git checkout 出错原因 (error: pathspec 'master' did not match any file(s) known to )

上一篇 下一篇

猜你喜欢

热点阅读