git使用中的一些命令及心得

风流意气都作罢 提交于 2019-12-21 01:25:04

Git 与 SVN 区别点:

1、Git 是分布式的,SVN 不是:这是 Git 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心
的区别。

2、Git 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个
类似 .svn、.cvs 等的文件夹里。

3、Git 分支和 SVN 的分支不同:分支在 SVN 中一点都不特别,其实它就是版本库中的另外一个目录。

4、Git 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 Git 缺少的最大的一个特征。

5、Git 的内容完整性要优于 SVN:Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整
性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

 

命令:
0.切换磁盘,从C盘切换到E盘: cd E: ; 与cmd不同,cmd为: E: ;

1.创建一个名为test的目录 : mkdir test

2.初始化一个 Git 仓库,即把这个目录变成Git可以管理的仓库: git init

3.Git 配置 : git config + 其他相关命令(参考:https://www.runoob.com/git/git-install-
setup.html 或 https://www.liaoxuefeng.com/wiki/896043488029600/897013573512192强烈建议新手同学看此文档)

4.把文件添加到仓库 : git add 文件

5.把文件提交到仓库 : git commit -m '提交注释'

6.查看在你上次提交之后是否有修改: git status

7.查看执行 git status 的结果的详细信息: git diff

8.查看提交历史记录:git log

8.1 查看分支合并情况:git log --graph --pretty=oneline --abbrev-commit

9.版本回退: git reset --hard HEAD~1->回退到上个版本

10.记录你的每一次命令 : git reflog

11.添加远程库: git remote add origin(远程库的名字) 远程库url

12.推送:git push -u origin master

13.拉取:git pull origin master

14.克隆: git clone [url]

15.创建分支命令:git branch (branchname)

15.1 列出分支基本命令:git branch

15.2 删除分支:git branch -d (branchname)

16.切换分支命令:git checkout (branchname)
当你切换分支的时候,Git 会用该分支的最后提交的快照替换你的工作目录的内容, 所
以多个分支不需要多个目录。

16.1 创建并切换分支:git checkout -b (branchname)

16.1 创建远程分支:git checkout -b (branchname) (远程版本库名:origin)/(远程branchname)

16.2 设置本地分支和远程分支的链接:git branch --set-upstream-to=origin/<branch> dev

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

17.1 强制禁用Fast forward模式(Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息):
git merge --no-ff -m "merge with no-ff" dev

18.储藏分支未添加的修改内容:git stash

18.1 查看位置:git stash list

18.2 恢复并删除:
(1)一是用git stash apply <stashname>恢复,但是恢复后,stash内容并不删除,
你需要用git stash drop来删除;
(2)另一种方式是用git stash pop,恢复的同时把stash内容也删了;

 

心得:

1.分支,git中的分支可看做一个单独版本库

2.切换分支代码自动匹配为切换分支的代码(官方:当你切换分支的时候,Git 会用该分支的最后提交的快
照替换你的工作目录的内容, 所以多个分支不需要多个目录。);例如:A分支切换到B分支,代码为B分支
的,相反为A的,不用拉取

3.合并分支,将A分支合并到B分支,是将A中的代码添加到B中,A中的不变
尝试合并两个分支,特点:master分支中有和newmaster2分支相同的文件夹及文件,但
内容不同,合并时要解决冲突,选中冲突文件更改为冲突解决,提交,完成

4.储藏功能:将当前分支中的修改进行一个保存,并将当前分支恢复至未修改前。当需要重新进行时,应用
即可

5.标签可以快速找到需要的版本

  

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!