使用Git进行代码管理
前言
在开发过程往往是多人协作开发,就需要一种合适的方式进行代码管理,进行代码版本管理。我接触到的两家公司都是使用的Git进行代码管理,工作过程遇到过不少问题,简单整理记录一下。
关于Git的底层实现就不详细说明了,如果想了解这方面的知识,可以去看看Git-Book以及Git from the Bottom Up。我只是为了记录一些常用的操作,之后可能会详细说说底层实现的东西。
简单的流程以及命令
准备工作
平时大家自己学习某个技术或者空闲的时候肯定会自己写一些简单的项目,代码保存在本地肯定,机器挂了的话,就完蛋了,最好的办法是托管在知名的代码托管平台,首先想到的肯定是GitHub,还有Gitlab,国内的coding,腾讯开发者平台,码云等。都支持使用git工具进行代码管理。
一般我们会使用配置ssh-key,使用ssh来连接自己的代码仓库,不然使用https还需要输入密码,那太麻烦了。
生成ssh密钥,使用下面的命令,会让你选择保存位置,输入密码。如果没有特殊需求,一路回车就行了。
ssh-keygen
生成密钥之后会保存在~/.ssh
目录下,id_rsa是私钥,id_rsa.pub是公钥,私钥保存在你自己电脑上,公钥配置在代码托管平台上,这样就可以使用ssh连接你的代码仓库。
# 目录下会生成两个文件
id_rsa id_rsa.pub
在本地初始化一个仓库
在需要初始化的位文件夹内执行下面的命令
git init # 初始化
# 如果是在你的项目内,比如路径下有你的a.py,b.py两个文件
git add a.py b.py # 将需要上传到代码仓库的文件添加到暂存区,支持文件夹、单个或者多个文件。
git commit -m "本次提交做了什么修改" #对这次提交代码的描述
关联远程仓库,并且将代码上传
在代码托管平台创建一个项目,此时项目是空的,你需要将你的代码提交到仓库中。
# 建立与远程仓库的联系
git remote add git@github.com:ZhangzhiS/ZhangzhiS.github.io.git
# 上面命令后面的链接是我自己的一个博客仓库,你可以复制你自己的项目链接
# 使用git push将代码推送到远程仓库
git push
更换电脑之后将代码拉取到本地
比如电脑坏了,或者其他原因换电脑了,可以把远程仓库的代码拉取到本地,当然你要先配置好ssh-key。
# 直接把代码clone下来就好了
git clone git@github.com:ZhangzhiS/ZhangzhiS.github.io.git
两台电脑一起修改的代码的时候
这时候就是简单的协作了。比如A电脑进行了代码文件a.py
进行了修改
git add a.py
git commit -m 修改xxx
git push
B电脑上没有A电脑修改的这部分代码,这时候可以将代码库中的修改之后的代码拉取到本地。
git pull
此时你就会发现,a.py
已经是修改之后的了。
上面说的简单流程是自己一个人开发的时候可以用到的,每次都是pull,push的工作。因为只是自己一个在做修改,发生冲突的概率是比较小的,但是真正工作中,经常会有你和同事修改同一个文件,发生冲突的概率也会很大。
下一篇说说Git的一些别的操作。