git学习笔记+常见命令

目录

 

1.下载git

2.git的最小配置

3.建git 仓库

4.git 暂存区和工作区

5.给文件重命名

6.通过git log查看版本演变历史

7.图形化界面($gitk)

8.commit 、tree、blob三个对象之间的关系

9.分离头指针(Head指向一个commit)

10.删除分支

11.怎么修改最新的commit message

12.怎么修改老旧的commit message

13.怎么样把多个连续的commit整理成一个

14.怎么样把多个不连续的commit整理成一个

15.怎么比较暂存区和head所含文件的区别

16.怎么比较暂存区和工作区的区别

17.如何让暂存区恢复成HEAD一样(即把暂存区的内容不要)

注意:reset是对暂存区进行修改

checkout是对工作区进行修改

18.如何把工作区的文件恢复和暂存区一样

19.怎么取消暂存区部分文件的更改(暂存区更改了很多,但是此时想恢复一部分文件和HEAD里一样)

20.消除最近几次提交

21.对两个分支里面的文件进行比较

22.正确删除文件的方法(删除了工作区和暂存区,如果要删除HEAD,就把这次提交到HEAD)

23.开发中临时加塞了紧急任务怎么处理(你此时一部分文件放在暂存区,一部分文件还在修改中,以上是手头的工作,但是此时你要改一下以前的bug,所以要把手头的工作状态保存起来,等到改完bug提交后,再恢复从以前的工作状态)

24.如何指定不需要git管理的文件(有些文件是由于要进行版本控制而产生的文件,通常这些文件是不会纳入代码的版本控制里面的)

25.git的备份

二:github

26.配置SSH公私钥 - 把本地仓库同步到Github

测试 SSH 连接

把本地仓库同步到GitHub:

第一种远端和本地分支关联的方法:git checkout -b 本地分支名

第二种远端和本地分支关联的方法:

git checkout -b 本地分支名 远端分支名(第二种方法比较方便)

27.不同人修改了不同文件该如何处理

28.不同人修改了同文件的不同区域如何处理

29.不同人修改了同一个文件的同一区域如何处理

30.同时变更了文件名和文件内容如何处理

31.把同一文件改成不同的文件名如何处理(不同人)

git命令:

最危险的命令:git push -f     强制更新


 

 

1.下载git

2.git的最小配置

打开git bash:

输入:git config --global user.name "your_name"

git config --global user.email "your_email"

以上配置的作用域是全局的,即你所有的仓库都是这个配置。

git config --local user.name "your_name"

git config --local user.email "your_email"

以上配置的作用域是本地当前的库的,即你这个仓库是这个配置。

 

优先级:local>global

 

3.建git 仓库

两种场景:

1)把已有的项目代码纳入git管理

cd 项目代码所在文件夹

git init

2)新建的项目直接用git管理

cd 某个文件夹

git init your_project #会在当前路径下创建和项目名称同名的文件夹

cd your_priject

 

4.git 暂存区和工作区

 

5.给文件重命名

git mv oldname newname

6.通过git log查看版本演变历史

git log      #可以查看(当前分支)所有提交记录

 

git log --oneline    #可以看所有提交信息记录

 

git log -n3     #n3  最近的前三个,也可以加上--online,效果如下:

git log --all    #查看所有分支的提交历史记录

git log --all --graph       #图形化显示

 

7.图形化界面($gitk)

显示所有分支的内容:菜单栏=》View=》new View =》勾选All refs

8.commit 、tree、blob三个对象之间的关系

 

9.分离头指针(Head指向一个commit)

git checkout 哈希值(commit的哈希值)

在这之后的操作,如果操作完成后,切换分支,操作会被清除掉

除非你在切换分支的时候,按照git的警告提示,为此创建一个分支(和某个分支绑在一起),这些操作才得以保留。

 

10.删除分支

保险起见:

git branch -d 分支名

确保不要,风险可控

git branch -D 分支名

 

11.怎么修改最新的commit message

git commit --amend

12.怎么修改老旧的commit message

git rebase -i 父亲的哈希值

然后会跳到第二个vim里:

13.怎么样把多个连续的commit整理成一个

git rebase -i 父亲的哈希值

输入命令后跳到vi

然后在命令模式下输入:wq(保存并退出),退出后会进入另一个vi,编写你要的message,然后退出:

14.怎么样把多个不连续的commit整理成一个

git rebase -i 父亲哈希值

退出后会出现:

输入git status,并按照提示输入:git rebase --continue

:

修改后成功。

15.怎么比较暂存区和head所含文件的区别

git diff --cached

 

16.怎么比较暂存区和工作区的区别

git diff 

 

如果要区别单独(或多个)的文件差异:

git diff -- sty.css df.html

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值