「Github」Linux/Ubuntu下终端Github教程与手册
1 前期准备
1.1 环境说明
系统:Ubuntu 18.04
1.2 前期准备
- 打开终端,确保git命令可使用;如果不能使用请自行搜索如何安装git
- 建议新建一个专门存储各个仓库的文件夹(假定文件夹命名为Git),然后再在Git下新建各个本地仓库的文件夹,例如文件夹结构:
|——Git
|—git_1
|—git_2
| …
1.3 git术语
- git: 一个开源的分布式版本控制系统
- GitHub: 一个托管和协作管理 Git 仓库的平台
- add: 添加文件到仓库(此时并未上传)
- commit 提交: 上传文件到仓库
- branch 分支: 一个轻型可移动的 commit 指针
- clone: 一个仓库的本地版本,包含所有提交和分支
- remote 远端: 一个 GitHub 上的公共仓库,所有小组成员通过它来交换修改
- fork: 一个属于另一用户的 GitHub 上的仓库的副本
- pull request 拉取请求: 一处用于比较和讨论分支上引入的差异,且具有评审、评论、集成测试等功能的地方
- HEAD: 代表你当前的工作目录。使用git checkout 可移动 HEAD 指针到不同的分支、标记(tags)或提交
2 教程&手册
2.1 git本地用户名设置
- 作用是区分不同用户的commit;本地用户名只本地使用,和github账号无关
2.1.1 为本地所有仓库设置全局用户名(global username)
- 打开终端
- 输入:
git config --global user.name "用户名"
命令中的“用户名”三个字替换为自定义用户名;“–global”表示在所有仓库中都使用该用户名 - 确认全局用户名:
git config --global user.name
- 顺带把全局用户名关联的email地址关联一下:
git config --global user.email "[邮箱]"
备注:全局用户名只能设置一个,如果设置多个,那么只会保存最后设置,具体验证请查看git 配置文件 .gitconfig
2.1.2 为仓库设置仓库用户名(local username)
- 打开终端
- 进入某仓库文件夹,例如进入上面提到的“git_1”文件夹
- 输入:
git config user.name "用户名"
如果报错“fatal: not in a git directory”,那说明文件夹git_1并没有进行仓库初始化,直接输入命令:git init
初始化当前仓库,再执行仓库用户名设置命令 - 确认仓库用户名:
git config user.name
该仓库用户名配置文件见.git文件夹下的config文件
如果该仓库没有配置仓库用户名,那么输入第四步命令,会显示全局用户名
ps:因为博主只设置了全局用户名,所以局部用户名是否可以关联邮箱就不验证了,感兴趣请读者自行验证
2.2 建仓
- 在终端cd进入仓库文件夹
- 初始化仓库:
git init
2.3 新建README.md
echo "# Git_repo" >> README.md
使用echo
命令,如果没有README.md文件会自动创建一个;命令中引号部分是添加到README.md中的内容
README.md遵从markdown的书写格式,因此想要增加标题/加粗等其他markdown格式,直接添加在引号中即可;上面命令“# Git_repo”在README.md文件中添加了一个标题,名为Git_repo;#号代表markdown标题格式
2.4 添加文件:add
git add README.md
添加README.md文件到仓库
当然也可以添加别的文件到仓库,但需要将要添加的文件/文件夹复制到仓库内
2.5 提交文件:commit
git commit -m "备注"
其中-m
表示该次commit附带一个message,即备注,备注内容为命令中引号内的内容
该命令提交所有已添加(add)的文件到本地仓库
2.6 分支操作
- 查看当前分支状态:
git status
显示分支名称,已添加文件 ;类似命令还有git diff
- 新建分支:
git branch 分支名
- 删除分支:
git branch -d 分支名
- 切换分支:
git checkout 分支名
还可以是git switch 分支名
或者git branch 分支名
- 显示所有分支:
git branch -a
/git branch
- 重命名当前分支:
git branch -m 新分支名
- 合并分支到当前分支:
git merge 分支名
- 删除当前分支下added文件:
git rm --cached 文件名
2.7 链接到Github上的仓库
git remote add 仓库地址的名字 仓库地址
仓库地址
就是Github上给的地址,然后给仓库地址
一个名字:仓库地址的名字
,此时还没有将本地仓库的内容推到Github上
2.8 推送 本地仓库 到 远程仓库(Github)上
git push 仓库地址的名字 仓库分支名字
2.9 拉取网络仓库
cd target_folder
git pulll HTTPS_LINK
2.10 为代码打上版本标签
git tag xx.xx
git tag v1.0
其中“xx.xx”表示标签设定的版本,第二行以v1.0为例;建议在commit后执行
2.11 如果在github官网对仓库进行了修改(重命名),更新和重新连接到本地仓库
git branch -m 本地仓库当前分支名字 新分支名字
git fetch 远程仓库地址在本地的名字 // 即教程2.7中“仓库地址的名字”
git branch -u 远程仓库地址在本地的名字/远程仓库地址默认分支名 新分支名字
git remote set-head 远程仓库地址在本地的名字 -a
2.12 查看历史提交和备注
git log
2.13 列出现有远程仓库
git remote -v
「Github」Linux/Ubuntu下终端Github教程与手册相关推荐
- Linux/Ubuntu下ffmpeg安装教程
一.简述ffmpeg FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序,它提供了录制.转换以及流化音视频的完整解决方案,包含了libavcodec --这是一个用于 ...
- 小米和360随身wifi在linux(Ubuntu)下作无线网卡教程
平台: Ubuntu12.04 Ubuntu 13.04 说明: 随身wifi本身无线网卡,但是厂商修改了PID,使其系统无法自动识别驱动.而改用他自带的驱动软件作为Ap来使用. 在设备驱动管理,小 ...
- 在ubuntu下使用Github?
如何在ubuntu下使用Github? 2016年05月05日 22:04:12 阅读数:12786 安装Git 一个全新的ubunt系统,需要安装Git(系统是不具有该工具的),方法如下: 在ter ...
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...
- 「推荐」Linux远程连接工具之ssh客户端工具
Ubuntu下Finalshell的安装 Ubuntu20.04安装 FinalShell远程工具 「推荐」Linux远程连接工具之ssh客户端工具
- qt程序在Linux下字体乱了,解决linux/Ubuntu下Qt creater 界面程序在编译运行后无法显示中文或中文乱码问题!...
本文解决的主要是界面程序编译运行后无法显示中文的问题,如果在creater 中无法输入中文,下载个IBus或者搜狗之类的中文输入法即可解决! 首先说乱码问题,这个很好解决: 如果是在linux下打开W ...
- ubuntu下终端提示符设置
PS1变量 修改/ect下bash.bashrc文件PS1变量 \d :代表日期,格式为weekday month date,例如:"Mon Aug 1" \H :完整的主机名称. ...
- linux/ubuntu下的代码对比工具Meld Diff
linux/ubuntu下的代码对比工具Meld Diff 做开发的都知道,一个项目多个版本,有的时候多了自己都昏,还有就是比对别人的代码的时候,眼睛看怕是要爆炸. 所以我们一般使用代码对比工具,也就 ...
- oracle xe 乱码_关于Linux操作系统下终端乱码的完美解决方法
初入linux的程序员们,经常会受到乱码的问候.可谓"始乱终弃".因为乱码,并且最终放弃了linux的不在少数.好吧,言归正传,先看看各类乱码是怎么形成的. 中文字符乱码 这种情况 ...
最新文章
- JS实例学习笔记——w3cschool+菜鸟教程
- Struts2与Webwork2的区别
- 在线实时大数据平台Storm集群组件学习
- 用户计算机可以通过电话拨号,用户计算机可以通过大型局域网、小型局域网、无线连接、电话拨号和()等方式接入Internet。...
- Spark键值对RDD的转化操作
- html5 机构化元素
- esp8266教程:定时器之原理基础
- java面试题(仅供参考)
- 职称计算机execl试题,职称计算机考试EXCEL操作题
- 利用谷歌浏览器模拟网速慢的情况
- 线上拼团活动方案怎么制作设计?
- python魔方程序算法_python魔方程序算法_python算法(一)
- 《山海经——五藏山经》
- 超静音服务器性能强,静音服务器:最适合办公环境的静音服务器
- 用vue-pdf包实现pdf文件预览,支持分页
- 内江求是中学计算机应用有哪些,内江市求是职业技术学校(内江市求是中学)官网/招生网2020网址...
- 乔春洋:挑战型品牌的进攻策略
- 分布式系统:概念与设计读书笔记
- (十三)深入理解蓝牙BLE之“Linux系统搭建zephyr和dongle的环境”
- 关于三只母鸡和三只小鸡过河问题
热门文章
- JavaScript实现cartesianProduct笛卡尔乘积算法(附完整源码)
- OpenCASCADE绘制测试线束:几何命令之曲线和曲面修改
- wxWidgets:显示和测试 wxDC 功能
- boost::system模块实现动态链接库的测试程序
- boost::spirit模块演示 AST 生成的计算器示例,AST一旦创建就会被遍历
- boost::serialization模块实现快速二进制归档的测试程序
- boost::combine相关的测试程序
- boost::random模块实现如何使用随机数库的简短演示程序
- boost::mp11::mp_replace_second相关用法的测试程序
- boost::mp11::mp_rename相关用法的测试程序