用了这么久的git,才发现一个神奇的事情。强烈建议:刚开始学习git时,一定要配合目录来看,才不至于像我玩了这么久git才搞清楚本地仓库到底和分支有什么关系。
不管了,先把这张图摆在这
当前在master分支,
且我们把a.txt内容修改为如下
发现a.txt是未跟踪的状态,用git add a.txt将该文件添加进暂存区,此时再次查看状态,a.txt已被跟踪
Git status
红色:未跟踪状态
运行git add
绿色:暂存状态
在github上新建一个仓库,在本地创建一个新的文件夹,复制远程仓库的地址,在本地右键git batch here,输入
Git clone url
会在当前目录下生成一个文件夹,文件夹名字叫仓库名,点进去,有一个.git的文件夹。
在这里新建一个目录,再目录中新建文件,进行提交
git status 查看当前目录下的文件处于什么状态,未跟踪和已跟踪的,绿色为已跟踪,可以直接commit,红色未跟踪先要add进入暂存区再进行commit
git commit 将a.txt加入本地仓库
使用git log查看
查看a.txt内容 cat a.txt
切换分支到cat,并查看cat分支下的a.txt
两个文件并不一样,我们切换分支,那么我们本地的目录中的内容也会改变,这就是git不知不觉的就切换目录啦!
现在我们在进行两个分支的合并操作,先切换到master分支,不过发现git merge指令出现Already up to date.我猜测是因为cat分支的a.txt我们并没有改动,所以git检测不到我们要merge的cat分支有何不同,所以我们现在切换回cat分支修改a.txt内容
再切换回master分支去Git merge
此时,我们的a.txt已经变成了这样
等号隔开上面是master分支的内容,下面是cat分支内容,我们需要手动修改,再次add,commit,随后就可以删除cat分支了。