git编辑器选哪个_[Git]Git创建和修改代码库

3bad2e140eeb8017769d77d6fe9e5ef8.png

有了上一篇的简易Git使用指南,接下来我们就可以创建自己的代码库了

创建代码库

1.把文件夹变成git文件夹

git init 这样子就这里面的内容就可以git了

2.把要git的文件放入暂存区

git有三个空间: Working Directory工作区,Staging Area暂存区,Repository仓库

cc04bf78e53585bcc07093d06c36aa46.png

工作区里面有三个txt文件,然后把cookie和bread放到暂存区,之后一次提交,就会一次性把staging area里面的所有东西(包括cookie和bread)提交到repository

git add cookie.txt #把cookie.txt放到暂存区

git add bread.txt #把bread.txt放到暂存区

如果某个文件被意外的放进了暂存区,可以使用 git reset cake.txt #从暂存区中删除cake.txt

查看文件的状态,可以使用 git status

b87e973bb8b5b62d4aae8733ea7363ba.png

3.对文件进行编辑

4.提交本次的编辑

当我们已经完成了一个版本的编辑之后,就可以提交了,输入 git commit 就会弹出如下的一个编辑器,我的是Sublime,在最上面添加本次修改的主要修改内容。如果想要使用其他的编辑器,可以查看本文”其他问题“

55ca60f29647745663d901570686ee4e.png

如果做了很多次修改以及上传,想要查找之前修改的不同版本,用 git log 即可,就会出现每次修改版本的快照

57cb0e1bace6a76188e98ae63926813f.png

修改代码库

1.git diff

在简易Git使用指南这篇文章中我们已经学过了git diff这个命令,可以对比两个不同的commit的之间的差别,那么假如我们修改了代码,然后 出去喝了点水,和同事聊聊天,回来之后忘记自己修改了哪些代码,也没有提交commit怎么办呢? 换句话说,git diff除了对比 commit1和commit2,可以对比工作目录和暂存区吗?

a6b465bda832dcadea84181a408766c5.png

当然可以!

git diff #对比working directory和staging area

git diff --staged #对比staging area和commit1

git diff commit1 commit2 #对比commit1和commit2

2.创建分支

b8b9b516791d186120d7c6967ae894c4.png

有的时候,我们可能会想要对自己工作的项目进行一个分支,比方说,Asteroids小游戏,我们想要试验一个简易的版本,同时又不想破坏原来的想法,就可以创建一个分支

git branch #查看目前都有哪些分支

git branch [branch_name] #创建一个新的分支

git checkout [branch_name] #当前为此branch

a67214166ac1d89ed35fc70cc29ff41d.png

如图,刚开始只有master主分支,然后我们创建了一个easy-mode的分支,然后当前分支设置为easy-mode,就可以看到小星星"* "移动到了easy-mode

如果想要看到某一分支什么时候产生的,可以输入以下代码来查看(这里的分支叫做coins) git log --graph --oneline master coins( 请注意,在可以使用 git log 查看 coins 分支之前,你需要使用命令 git checkout coins 检出 coins 分支 )

82e36e825f14795a66c6ed26b19fe8da.png

可以看到是在Revert controls之后产生了新的coins分支

3.合并分支

一个项目往往由不同的人同时开发,那么假如Jack创建了一个分支,对代码做了修改,Rachel也创建了一个分支,对代码做了修改,最终项目要合并。 首先我们先看一下项目合并的话,哪些代码会被保存下来,例子如下,初始的代码是ABD,然后Jack的代码是BDE,Rachel的代码是ABCD,那么最终合并的时候,由于A在初始的代码里面,但是被Jack删掉了,所以final不会有A,而BD存在于初始,Jack,Rachel的代码里面,保留,C和E分别都是初始没有的,但是后来添加上的,也保留

8dad092b7506a2eb5d5d854d9d985677.png

合并分支还会产生一个问题就是,你想要合并哪些分支?并且合并之后可能会删除其中一条分支的标签,怎么确定要保留哪个分支的标签,删除哪个分支的标签呢? 如果当前分支为branch1,并且运行git merge branch2 branch3,则合并的版本会将 branch1 以及 branch2 和 branch3 组合起来。 如果当前分支为branch2,运行git merge branch2 branch3,则将 branch2 和 branch3 组合起来,且branch2指向新的提交(即把branch3合并到了branch2上面,branch3的标签删掉

这部分详情请点击Udacity通过命令行合并

合并之后有的时候会报错,因为会有一些代码冲突,那么就需要人为的在代码上面进行修改了

至此,git的基本用法就学完了,接下来可以利用Github进行协作

其他问题

如何修改默认编辑器

只需输入下面的代码就可以了,此处我用的是Sublime,当然也可以使用Notepad++等的编辑器,地址为此编辑器的exe地址

git config --global core.editor "'C:Program FilesSublime Text 3/sublime_text.exe' -n -w"


任妍Carol:机器学习小白笔记目录​zhuanlan.zhihu.com
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值