Git学习--入门

安装Git 下载地址:https://git-for-windows.github.io/

下载好git后 ----------

创建代码仓库----新建一个邮箱和名字

创建代码仓库--

代码仓库是用于保存版本管理所需要信息的地方,所有本地提交的代码都会被提交到代码仓库中,如果有需要还可以再推送到远程仓库中。
现在尝试给BroadcastBestPractice项目建立一个代码仓库,开始打开Git --Git Bash,或者直接进入你项目的目录里右键--Git Bash Here

输入git inti
这样就完成了创建代码仓库的操作

代码仓库创建完成后,会在BroadcastBestPractice项目的根目录下生成一个隐藏的.git文件夹,这个文件夹就是用来记录本地所有的Git操作的,可以通过ls -al 命令来查看一下

如果你想要删除本地仓库,只需要删除这个.git文件夹就好了

代码仓库现在已经创建好了

提交本地代码

代码仓库建立完之后就可以提交代码了,提交代码的方法也非常简单,只需要使用add和commit命令就行了。
add用于把想要提交的代码先添加进来
而commit则是真正地去执行提交操作

git add 文件名.后缀
git add 目录名
git add . (代表将所有的文件都添加进来)

当你指定的文件都添加好了,就可以提交一下了
git commit -m "First commit"
注意:在commit命令的后面,我们一定要通过-m参数 来加上提交的描述信息,没有描述信息的提交被认为是不合法的,会无法提交成功。

如果那个目录没有被git init(初始化仓库),那么它是不会显示那个master的

记住:add命令叫添加 ,commit命令叫提交,后面不要忘记我是说哪一个。

add过了 就会变绿色

.gitgnore(忽略文件)的意义

.gitignore文件里面的内容是,记录着指定的文件或目录,这些都会被排除在版本控制之外,既会忽略这些指定的文件目录的变动


添加了这样两行配置,现在我们可以提交代码了,先使用add命令将所有的文件进行添加

git add .
git commit -m "First commit"

查看修改内容

查看自上次提交之后文件修改的内容
---注意是上次commit,而不是add
在进行了第一次代码提交后,我们后面还可能会对项目不断的添加代码或其他,比较理想的情况下每当完成一小块功能就执行一次提交,但是如果某个功能牵扯到的代码比较多,以至于写到后面都忘记前面修改了什么内容,因为这个而犹豫要不要提交。那么这是查看修改内容的作用就出来了。下面学习一下如何使用Git 来查看自上次提交(commit)后文件修改的内容

查看文件修改情况命令--- git status
现在随便修改一些代码

然后我现在重新输入 git status

Git提示我们MainActivity.java这个文件发生了更改,那么如何才能拿看到更改后的内容呢

git diff

git diff 查看所有文件的更改内容
如果只想看MainActivity.java这个文件的更改内容可以使用如下命令:
git diff app/src/main/java/com/example/broadcastbestpractice/MainActivity.java --注意斜杠方向

撤销未提交的修改

假如我们添加代码后反而写错了反而改出了问题。那么 只要代码还未提交,所有修改的内容都是可以撤销的。

git checkout XXXX

执行这个命令后,我们对XXX这个文件所做的一切修改就应该都被撤销了
git checkout app/src/main/java/com/example/broadcastbestpractice/MainActivity.java
然后再重新输入git status 命令来检查一下

可见撤销操作成功了,
发现真实的代码那边 真的也撤销了代码了。如下图

不过这种撤销方式只是用于还没有被add命令的文件,如果某个文件已经被添加过了,这种方式就无法撤销其更改的内容

实验一下,add 后还能不能撤销

然后**git add . **
添加后,然后再git status

现在我们再执行一遍checkout 命令,你会发现MainActivity的代码仍然处于已添加的状态,照以前来说,只要checkout后再git status,那行修改文件 都不会再这个控制台出现了。然而现在所修改的内容无法撤销掉了

解决办法

对于已添加的文件我们应该先对其取消添加,然后才可以撤回提交。
取消添加使用的是reset命令

git reset HEAD XXXXXXX

git reset HEAD app/src/main/java/com/example/broadcastbestpractice/MainActivity.java


可以发现,MainActivity.java这个文件重新变回了未添加状态,此时就可以使用checkout命令来将修改的内容进行撤销.。(只要它还是处于红色的,那么我就可以用checkout命令使它撤销)
小技巧:用TAB补全键可以加快输入包名的速度
checkout前:

checkout 后:

查看提交记录

当BroadcastBestPractice这个项目开发了几个月之后,我们可能已经执行过上百次的提交操作了,这个时候估计你早就已经忘记每次提交都修改了哪些内容。

git log

可以看到每次提交记录都包含提交id,提交人,提交日期一级提交描述这4个信息,那么我现在修改一下代码,然后再执行一次提交操作。

当提交记录非常多的时候,如果我们只想查看其中一条记录,可以在命令中指定该记录的id,并加上-1参数 表示我们只想看到一行记录,如下所示:

git log 1b08efe2b47630105a35cf02e751b99e65b3fb4f -1

如果想要查看这条提交记录具体修改了什么内容,可以在命令行中加入-p参数,命令如下

git log 1b08efe2b47630105a35cf02e751b99e65b3fb4f -1 -p

暂时到这里

posted @ 2018-04-15 11:43  Pororo  阅读(283)  评论(0编辑  收藏  举报