1.设置全局信息
? 如果想要进行软件的开发,那么一定需要存在有软件的开发这的人员信息,配置一些公共的环境属性。
? **范例:**设置开发者的用户名称
?
? **范例:**设置开发者的邮箱信息
? 如果需要知道当前的git下的全局信息,可以使用如下的命令执行:
此时会返回如下的信息:
? 如果仓库中发现增加了新的文件或者修改了文件,提示有未跟踪的文件。
? 现在假设hello.java 文件项目最终的文件,所以必须要将其进行提交,提交给git的文件管理系统。
**范例:**将文件添加到git暂存区中:
添加完成之后,随后查询当前仓库的状态。
? 现在才表示将新的文件提交到git中进行管理,这个代码才能被项目所使用
? 但是如果说现在同时创建里好几个新文件呢用的git status 会立刻告诉用户此时出现了两个新文件。
?
**范例:**随后进行版本库的提交
但是会有人觉得麻烦,既然所有的代码搜要提交到版本库中,那么完全没有必要先提交到暂存库,应该直接添加会比较好。
范例:自动添加并提交修改到版本库中。
-
修改Emp.java文件
-
随后查询当前的状态 git status
优点:以上没有用到任何的 络配置
4.修改仓库的文件
? 如果说现在碎玉仓库中的文件进行修改的话,在查询状态时会进行及时的体现
范例:修改hello.java 文件
?
此时在hello.java 中添加了两行代码,此时查询状态:
如果此时要想知道文件与已发布的代码哪块发生了改变,则可以使用如下的命令完成
每一次提交的时候都会出现一个commit id 以供日后版本恢复的时候使用。
4.工作区、暂存区、版本库
在整个git之中,碎玉文件的保一共提供有三个区域。
- 工作区(用户所编写的代码的文件夹):所有文件操作都已工作区为主;不会影响到程序
- git仓库:
- 暂存区:只是将工作区中未保存文件保存到暂存区中,此时由git进行维护
- 版本库:进行发布的地方
- 首先用户需要在工作区中i编写我们所需要的文件,但是此时的文件并不能保存到git仓库中,并且在这一个区域中所进行的文件的增删改都不会影响到最终的软件版本的发布,就好比一个临时的区域。如果需要将临时区域的内容保存到最终发布的软件版本里面需要将其首先添加到暂存区。(此时没有发布到我们的版本库中可以撤销),使用 git add进行添加
- 使用git add 之后,首先将工作区中的新文件状态进行了删除,而后将所有的新文件保存在了暂存区里面。保存在暂存区里面的内容只能够暂时需要的,那么也可以将暂存区的内容删除掉,而后真正要想能够发布的项目必须将其设置在master分支上,这样之后进行提交之后才可以将暂存区内容保存在版本库中,被其他人所使用。执行 commit。
- 由于一个项目可能会被发布多次,所以在git里面保存了commit id ,用于开发者提供版本回退的处理机制。
-
首先修改hello.java 文件 添加 System.out.println(“new add”);
现在的文件内容再工作区里面修改,这个文件不能被真正的项目所使用。
-
当使用 git status 提示工作区发生变化
? 实际上保存到暂存区中的内容尚志市给了用户一个临时保存暂时不改代码的空间,可以进行恢复。
-
如果现在继续修改hello.java 文件,此时的修改是在工作区的文件。再添加 System.out.println(“new add”);
6.撤销修改
在任何的开发过程中,都很难保证发生”无用“修改的操作,在git里面针对此类的操作是加上就是指的修改撤销功能,这里提供两种情况:
- 在工作区中发生了改变,此时没有提交到暂存区中(未add)
- 已经添加到了暂存区,没有提交到master分支(未commi)
-
在工作去中进行开发(未add并且commit)
这个时候如果想恢复到原来的代码,进行checkout操作
-
首先使用git status 查看当前的状态
-
此时文件存在暂存区当中,我们要做的是将暂存区中的文件恢复到工作区中。
-
但是此时只是工作区中的 文件被删除,如果要删除master分支上的代码,必须提交更新
如果说开发者认为删除错了,可以进行恢复。
以上的情况说的是删除已经被提交的情况。那么还有一种可能性,删除发生在工作区里面,这个时候由于master分支上仍热存在aaa.txt 文件,那么可以直接利用master分支上的aaa.txt 使用如下的代码:
总结:工作区中的删除可以使用checkout重新检出,而master分支上的删除就必须使用版本穿越进行恢复了
文章知识点与官方知识档案匹配,可进一步学习相关知识Git技能树首页概览3097 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!
-