Linux环境下git的使用
在Linux环境下,如果想要使用git工具来管理我们的文件,操作的方法是什么?我们以一个文件夹内容举例如果想让此文件夹里面的内容都进行版本管控,应该如何操作?欲知详情,请先看我下表中的操作!一、建立起本地的版本管控步骤命令备注先切换到需要管控的文件夹上面cd code2初始化(创建本地版本控制仓库)git init添加文件到仓库的暂存区git add 添加某一个文件git add .添加所有的文件
在Linux环境下,如果想要使用git工具来管理我们的文件,操作的方法是什么?
我们以一个文件夹内容举例
如果想让此文件夹里面的内容都进行版本管控,应该如何操作?
欲知详情,请先看我下表中的操作!
一、建立起本地的版本管控
步骤 | 命令 | 备注 |
---|---|---|
先切换到需要管控的文件夹上面 | cd code2 | |
初始化(创建本地版本控制仓库) | git init | |
添加文件到仓库的暂存区 | git add 添加某一个文件 git add . 添加所有的文件 | |
从暂存区移除文件 | git rm --cached | 把提交的文件移除暂存区(如果想移除的话) |
查看版本控制的状态 | git status | 不知道怎么做时都可以用这条命令查看当前状态 |
配置用户名和邮箱 | git config --global user.email “frued@126.com” git config --global user.name “jackfrued” | 第一次使用前需要进行配置,否则提交会报错 |
将暂存区的文件同步到本地仓库 | git commit -m ‘项目初始版本’ | -m表示的时message说明,后面即为说明内容 |
查看提交日志 | git log | |
用暂存区恢复工作区 | git restore | 当文件内容误删除或者误修改时可使用 |
版本回退 | git reset --hard d656a6 | –hard表示回退后,工作区暂存区和回退版本一致,当前指向的也是回退的版本 |
查看过去和将来的提交日志 | git reflog | 版本回退后如果又向改回以前版本,可用此命令查询版本的提交代码 |
以上表中的操作主要是在本地把版本管控起来了,如果还想把代码绑定在公司的Git私服(绑定远端服务器),且继续看下面中的操作:
二、建立仓库
此处用gitee代替公司的Git私服来讲解:
建立仓库的方法如下图所示
三、配置本地和gitee服务器之间的免密传输(只需配置一次)
配置免密传输的步骤如下:
1、首先在linux系统里面生成非对象加密的公钥和私钥对
ssh-keygen -t rsa -b 2048 -C "jackfrued@126.com"
2、然后取到存贮密钥对的隐藏文件夹:
cd /root/.ssh
3、打开公钥文件复制里面的内容:
4、将公钥里面的内容复制到gitee网页里面的ssh公钥位置里,具体操作步骤如下面一系列图片所示:
至此,和码云之间的免密传输就配置好了,之所以要配置这个,和码云之间的传输待会使用的是ssh传输,必须要配置,否则不能上传。
四、绑定远端服务器
首先复制gitee仓库的ssh地址
然后使用如下命令进行远程连接:
git remote add origin git@gitee.com:jackfrued/welcome2git.git
建立好了之后可以使用如下命令查看:
git remote -v
五、将代码上推到服务器
git push -u origin master
六、从服务器上克隆代码到本地
当文件被误删除、或下载本地没有的代码,可以根据需要执行以下类型的克隆语句
命令 | 区别 |
---|---|
git clone git@gitee.com:jackfrued/welcome2git.git | 克隆代码到本地,clone后面是仓库的ssh地址,此种方法的文件名称和库名称保持一致 |
git clone git@gitee.com:jackfrued/welcome2git.git code | 文件名称为code |
git clone --depth=1 git@gitee.com:jackfrued/welcome2git.git code | 克隆最新的几个版本,depth=1表示克隆最新的版本 |
七、获取服务器上的代码
当服务器文件有更新,可以直接使用以下语句得到文件的更新,前提是没有文件冲突
git pull ---> git fetch + git merge
默认:fast-forward
八、解决冲突的方法
多人维护一个文件时,可能会发生对同一块内容进行变更和修改,此时就会发生文件冲突,git push会报rejected错误和git pull命令会报CONFLICT错误,如果遇到这种情况,请按照以下步骤进行解决:
1、首先使用如下命令检查冲突发生的位置:
git diff
2、找当事人协商解决有冲突的文件,确认最终结果后,再用vim编辑修改
3、重新提交
4、重新将文件push到gitee服务器
git push
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)