git命令学习笔记

来了新公司,不能用sourceTree了,只能用命令行了。之前习惯了可视化操作,对于命令只是略知一二,没办法从头开始学习咯!!!本人新手写错了,一定请大家留言指正!!

这里有一张图,可以清晰一点认识git




从常用的学起:


1.git diff和git status

提交代码前得先确认做了些什么改动吧。git status查看当前状态:



一目了然,然后查看做了什么改动:git diff,按enter查看下一行,按q退出查看!!还有 git diff --staged查看已经stage的改变过的文件。


2.git add

如果你发现你修改的文件没有staged,可以用git add添加之后,就可以commit了!

git add . 可以staged所有未staged文件


3.git commit

使用git commit -m "commit message"可以提交当前已经staged的文件


4.git push origin master

提交已经commit的文件


5.git log

查看已经提交过的commit的log

git reflog可以查看每一次命令的信息。由此可以看到版本的id。



使用git reset --hard <id>从而达到任意版本切换

6.git checkout --

使用git checkout -- <file>可以放弃更改(discard changes)


7.git rm --cached <file>

不再跟踪某个文件


8.git branch

git branch(无参数)   列出本地分支,当前分支用*标注。

git branch -r             列出远程分支

git branch -a  列出所有分支(本地和远程)

git branch -d <branchname> 删除名为“branch name”的本地分支

git branch -d -r <branchname>删除名为“branch name”的远程分支(慎用!!!)



9.git reset

HEAD代表当前版本,HEAD^代表前一个版本,几个^就代表是前几个版本,HEAD~100代表前100个版本。

HEAD是一个指向当前版本的指针,使用git reset只是改变了,指向的内容。

git reset --hard HEAD^ 本地分支回滚到前一个版本。(只是本地分支回滚)

git reset --hard <commit id>可以回到任意一个版本(包括之前回来后废掉的那个版本,只要id正确)


10.git checkout --

git checkout -- <file> 让工作区的file回到修改之前的状态。(回到上一次commit或者add之前的状态)

注意git checkout没有 --是对分支的操作。不能把两个命令弄混了

git reset HEAD <file> 已经add到stage的文件回到工作区。

11.分支管理

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

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

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

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

选自:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001375840038939c291467cc7c747b1810aab2fb8863508000

12.git rebase
如果提交的时候遇到错误如下:

you are not allowed to upload merges

这个时候很可能是你本地分支不止一个commit没提交!(最好是每次commit提交一次)就可以用到git rebase:向前提交!
如果git rebase过程中遇到冲突了,需要手动解决冲突,然后git add -u,记住add之后不需要commit!
然后git continue!这个时候再提交就可以了

13. git clone -b
只clone远程的某个具体分支。
git clone -b <branch name> [remote repository address]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值