git使用与代码托管
平时自己写的简单程序文件太多,可以放到代码托管的网站。比如国内的gitee.com, 好吧,只是把这个网站当网络云盘用了。在gitee网站上加上程序运行环境,使用文档,写好README.md使用介绍。而在这些代码托管网站上传下载代码就要用到git这个软件。git是个工具,需要在linux上安装好。其他代码网站github也是一样的git用法。
git的使用视频教程:https://www.bilibili.com/video/av58666078/
记录下上传的第一个项目(传个简单的一个c文件)
gitee上增加编译电脑的key
首先准备一个key pair用于gitee安全认证。在自己编译电脑上生成一个key,私钥保存在本地电脑,然后把public key(ssh_rsa)加到gitee上。这样公钥加密代码,下载到本地电脑后私钥解密。这样就达到安全认证的作用。
生成key
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/pc/.ssh/id_rsa):
Created directory '/home/pc/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/pc/.ssh/id_rsa.
Your public key has been saved in /home/pc/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:gGQQ8AfmHB6ccsJffV6FGgsNrqhPY0pnRcZhimhXhJg pc@pc-container
The key's randomart image is:
+---[RSA 2048]----+
|ooX+==..o o. |
|+E=B=ooo + o |
|.**o++..+ = |
|. .o+ .. + |
| . o S |
| . . |
| o * |
|. B . |
| . . |
+----[SHA256]-----+
复制public key到gitee
pc@pc-container:~$ cat /home/pc/.ssh/id_rsa.pub
ssh-rsa AAA5u8XP1fZHmj62x6R65dbeBSZ pc@pc-container
gitee上保存public key。以后这台电脑下载的代码都用这个public key加密。
创建仓库
gitee上自己可以创建仓库,以后这个项目的代码就可以提交到这个仓库保存。创建并不复杂,可以看到仓库创建好后的样子。点击克隆下载可以获得仓库的网址,这样在本地电脑就可以用这个网址clone这个仓库的代码。
下载gitee上的代码
上面已经创建好了仓库,并得到了仓库的网址。本地电脑是还没有这个仓库的代码/文件的。直接clone代码
1.新建一个保存代码的目录
pc@pc-container:~$ mkdir git
2.目录初始化,这样本地就有了一个仓库
pc@pc-container:~$ cd git
pc@pc-container:~/git$ git init
Initialized empty Git repository in /git/.git/ 根目录下创建.git的隐藏目录
3.下载代码,clone的地址从gitee上branch点clone获得
pc@pc-container:~/git$ git clone https://gitee.com/code_example.git
Cloning ...
提交代码
可以自己随便写个c文件,提交到remote仓库上去试试看。
保存到本地仓库
查看改动
pc@pc-container:~/git$ git status
Your branch is up to date with 'origin/master'.
modified: ipv4.c 自己写的c文件
保存改动
参考git工作原理:本地仓库、远程仓库
$ git add ipv4.c
commit
将要提交改动的文件进行注释
第一次会要求填邮箱信息
pc@pc-container:~/git$ git config --global user.email "user@com.cn"
pc@pc-container:~/git$ git config --global user.name "user"
提交文件的注释
pc@pc-container:~/git$ git commit -m "ipv4文件提交"
push 提交代码
提交到远端仓库
pc@pc-container:~/git$ git push
Counting objects: 19, done.
push之后在gitee上可以看到提交上来的文件。
如果git提交上去后发现改坏了程序,git也可以很方便的回退到以前这个项目任意时刻的版本。git还有很多其他操作命令,参考资料也很多。
参考
git操作教程:https://www.liaoxuefeng.com/wiki/896043488029600
命令:https://zhuanlan.zhihu.com/p/25868120
精通Git(第2版)作者: Scott Chacon / Ben Straub 出版社: 人民邮电出版社 原作名: Pro Git 出版年: 2017-9
git使用与代码托管的更多相关文章
- 使用百度云同步盘和Git Extensions进行代码托管
一.软件安装 百度云同步盘和Git Extensions的安装和配置略过. 二.建立Git代码库,以[GHO2VMDK转换工具]项目为例 1. 建立本地代码库 进入[GHO2VMDK转换工具]项目文件 ...
- 代码托管工具 git
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } p. ...
- GIT → 04:Git与代码托管平台
4.1 Git 与 GitHub比较 Git 是一个版本管理工具 , 只在本地使用的一个版本管理工具,其作用就是可以让你更好的管理你的程序,比如你原来提交过的内容,后面虽然修改过,但是通过git这个工 ...
- 国内2大Git代码托管网站
可以说GitHub的出现完全颠覆了以往大家对代码托管网站的认识.GitHub不但是一个代码托管网站,更是一个程序员的SNS社区.GitHub真正迷人的是它的创新能力与Geek精神,这些都是无法模仿的. ...
- 软件工程 Coding.net代码托管平台 Git初学者的使用总结 五步完成 程序,文件,文件夹的Git
一.前言 第一次用git相关的命令行,我使用的是Coding.net代码托管平台.Coding.net 自主打造的基于 Git 的代码托管平台,提供高性能的远端仓库,还有保护分支,历史版本分屏对比. ...
- oschina(开源中国)的Git代码托管平台使用教程
oschina(开源中国)的Git代码托管平台使用教程 第一章 平台介绍 一. Git@OSC简介 开源中国的Git@OSC一个账号最多可以创建1000个项目,包含公有和私有,开源中国代码托管地址:h ...
- Git(分布式版本控制系统)在Windows下的使用-将代码托管到开源中国(oschina)
一.Git是什么? Git --- The stupid content tracker, 傻瓜内容跟踪器.Git是目前世界上最先进的分布式版本控制系统. 二.SVN与Git的最主要的区别? ...
- Windows 下使用git 将代码托管到开源中国-(http://git.oschina.net/)
一.准备工作 当然是准备在windows 下使用需要的环境,和工具. msysgit 下载地址:http://msysgit.github.io/ TortoiseGit 下载地址:https:// ...
- 程序员必须知道的几个Git代码托管平台
上一篇博客中2015继续任性——不会Git命令,照样玩转Git我们简单的介绍了在VS2013中使用Git,和GitHub客户端的使用.那么使用Git到底有什么好处呢?最为明显的是支持Git代码托管的平 ...
- 支持Git的代码托管网站
支持Git的代码托管网站: https://github.com/https://code.google.com http://www.codeplex.com/ http://git.oschina ...
随机推荐
- this硬绑定
一.this显示绑定 this显示绑定,顾名思义,它有别于this的隐式绑定,而隐式绑定必须要求一个对象内部包含一个指向某个函数的属性(或者某个对象或者上下文包含一个函数调用位置),并通过这个属性间接 ...
- KubeEdge SIG AI发布首个分布式协同AI Benchmark调研
摘要:AI Benchmark旨在衡量AI模型的性能和效能. 本文分享自华为云社区<KubeEdge SIG AI发布首个分布式协同AI Benchmark调研>,作者:KubeEdge ...
- 集合元素的遍历操作,使用迭代器Iterator接口
1.内部的方法:hasNext() 和 next() 推荐的方式: //hasNext():判断是否还有下一个元素while(iterator.hasNext()){ //next():①指针下移 ② ...
- java集合框架复习----(1)
文章目录 1 .集合框架思维导图 一.什么是集合 二.collection接口 1 .集合框架思维导图 一.什么是集合 存放在java.util.*.是一个存放对象的容器. 存放的是对象的引用,不是对 ...
- python学习笔记----必备知识
一.必备知识 二.流程控制 https://blog.csdn.net/weixin_43304253/article/details/120778228 1.1语法特点: 1.1.1 代码注释 单行 ...
- 2022年最新最详细IDEA关联数据库方式、在IDEA中进行数据库的可视化操作(包含图解过程)
文章目录 1.使用IDEA关联Mysql数据库的详细操作步骤 1.1 打开侧边栏的Database 2.2. 选择要连接的数据库(Mysql) 2.3 .输入要连接的数据库.用户名.密码 2.4 .点 ...
- Vulnhub 靶机 pwnlab_init 渗透——详细教程
1. 下载 pwnlab_ini 靶机的 .ova 文件并导入 VMware: pwnlab下载地址:PwnLab: init ~ VulnHub 导入VMware时遇到VMware上虚机太多,无法确 ...
- golang单元测试一(简单函数测试)
0.1.索引 https://blog.waterflow.link/articles/1663688140724 1.简介 单元测试是测试代码.组件和模块的单元函数.单元测试的目的是清除代码中的错误 ...
- CF39H
前言 谁来给我讲讲九九乘法表啊. 以上菲克向. \(\sf{Solution}\) 看题上来就是数据范围 \(2\leq k\leq 10\) ,显然打表可以轻松水过,数据这么小,手算是没问题的啦. ...
- JAVA语言学习-面向对象(1)
类与对象 类 类是JAVA语言中重要的复合型数据类型().类的实现包括两个部分:成员变量和成员方法("方法"可以看作是C语言中的函数) 类的声明 要使用类,首先得对其声明.声明一个 ...