首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >零基础1小时上手git

零基础1小时上手git

作者头像
zstar
发布2022-06-14 11:51:58
发布2022-06-14 11:51:58
7770
举报
文章被收录于专栏:往期博文往期博文

版本控制

版本控制的优点:

  • 实现跨区域多人协同开发
  • 追踪和记载一个或者多个文件的历史记录
  • 组织和保护你的源代码和文档
  • 统计工作量
  • 并行开发、提高开发效率
  • 跟踪记录整个软件的开发过程
  • 减轻开发人员的负担,节省时间,同时降低人为错误

版本控制分类

  1. 本地版本控制

最原始的版本控制,类似自动创建多个快照。

  1. 集中版本控制

所有的版本数据都存在服务器上,用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看 不到历史版本,也无法切换版本验证问题,或在不同分支工作。服务器数据需要定期做备份。

  1. 分布式版本控制

每个用户都拥有全部数据,加强了数据的安全稳定性,但增加了本地存储空间的占用。

最常用的版本控制器

SVN:集中式版本控制系统 Git:分布式版本控制系统

git工具下载

git官网 淘宝镜像

git工具释疑

安装好git后,可以看到三个工具。

Git Bash:Unix与Linux风格的命令行 Git CMD:Windows风格的命令行 Git GUI:图形界面的Git

Git Bash最为常用

基本的Linux命令

由于要用Git Bash,需要掌握基本的Linux命令,下面是一些常用命令汇总。

Linux语句

实现功能

cd . .

回退到上一个目录

pwd

显示当前所在的目录路径

ls

列出当前目录中的所有文件

touch

新建一个文件

rm

删除一个文件

mkdir

新建一个文件夹

rm -r

删除一个文件夹

mv

mv index.html src , index.html 是我们要移动的文件, src 是目标文件夹

reset

重新初始化终端

clear

清屏

history

查看命令历史

exit

回退到上一个目录

设置用户名与邮箱(用户标识)

打开git bash,输入下面的命令进行设置。 设置用户名:

代码语言:javascript
复制
 git config --global user.name "zstar"

设置邮箱:

代码语言:javascript
复制
 git config --global user.email zstar1003@163.com

输入完后,会在本地新建一个配置文件,该文件是隐藏的。 输入下面的命令,可以查看配置文件:

代码语言:javascript
复制
git config --global --list

Git基本理论

Git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。文件在这四个区域之间的转换关系如下:

  • Workspace:工作区,就是你平时存放项目代码的地方
  • Index / Stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
  • Repository:仓库区(或本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
  • Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换

在实际操作中,只需记六个命令:

上面的理论看得有点懵?

用通俗的语言皆解释一下文件上传的过程: 在本地IDE上编写好代码后,代码就存在了workspace上。这时候使用 git add . 命令,所有代码就会放入暂存区(Index),相当于存放在内存里,如果这时候关机,该部分会释放掉。之后,再使用 git commit 命令,暂存区的代码会存放到本地仓库(Repository)里,相当于数据已经存放到了本地电脑上的另一个地方。最后,使用 git push 命令,代码从本地仓库提交到远程服务器上。

文件下载过程类似,参照上面的图片。

本地仓库搭建

新建一个本地仓库文件夹,在该文件夹下打开git bash,输入 git init,就会默认生成一个.git的文件夹,该文件夹是隐藏的,windows需要打开查看隐藏文件才可见。

复制该文件夹到其它任意项目文件夹中,项目文件夹就成为了一个新的本地仓库。 用pycharm等IDE打开后,会发现上面多出了几个图标。

使用码云(Gitee)

github国内访问速度较慢,因此这里采用国内的码云来做代码的远程管理。 码云官网 进入官网后进行注册,在个人设置这里绑定邮箱,之后的git操作需要用该邮箱进行登陆。

pycharm内嵌git实操

由于常用各种IDE进行代码编辑,因此在IDE中去填入git更为方便。下面就来实际操作如何在pycharm提交代码到码云。

1.安装gitee插件

2.登陆gitee账号

3.在pycharm内设置gitee

如果未进行设置,在命令行输入会找不到git命令。

设置Git可执行文件的路径:

设置Shell的引用:

4.创建项目

首先要在项目获得.git文件。 这里可以参照上面的方式,使用git初始化,再将文件夹复制到项目目录。 另一种更方便的方式是直接在这里Create,选择之后会在文件夹下默认产生.git文件。

本地仓库创建好之后,要创建远程仓库。

Private不勾选,代表该项目是公开的,任何人可以搜到。 Remote:代表分支。 Description:项目描述。

5.添加项目到暂存区

在pycharm的Terminal内输入

代码语言:javascript
复制
git add .

里面的 . 代表所有文件 代码进入暂存区 输入之后,新修改的代码文件会变成蓝色。

6.添加项目到本地仓库

当暂存区不会空时,就可以勾选这个commit

选择需要上传的文件到本地仓库,并写提交信息。

7.上传到远程仓库

完成本地仓库上传后,在终端输入

代码语言:javascript
复制
git push

push后面可以添加分支,默认origin master. 成功上传到远程平台。

其它补充

通过上面的实操,基本完成了代码的上传。下面是一些其它补充内容。

git上传时忽略掉一些文件(.gitignore)

编写一个.gitignore.txt文档,放到setting同级目录下,内容如下:

代码语言:javascript
复制
# pycharm
.idea/
.DS_Store

__pycache__/
*.py[cod]
*$py.class

# Django stuff:
local_settings.py
*.sqlite3

# database migrations
*/migrations/*.py
!*/migrations/__init__.py

这表示.gitignore.txt内标记的文件将不会上传码云。

git一些分支操作

多人协作时需要用到分支操作,这里暂不涉及实际操作。 git分支中常用指令:

代码语言:javascript
复制
# 列出所有本地分支
git branch
# 列出所有远程分支
git branch -r
# 新建一个分支,但依然停留在当前分支
git branch [branch-name]
# 新建一个分支,并切换到该分支
git checkout -b [branch]
# 合并指定分支到当前分支
$ git merge [branch]
# 删除分支
$ git branch -d [branch-name]
# 删除远程分支
$ git push origin --delete [branch-name]
$ git branch -dr [remote/branch]

git上传时带上依赖库

备份依赖库到项目文件夹:pip freeze > requirements.txt 一键安装依赖库:pip install -r requirements.txt

参考资料

1.【狂神说Java】Git最新教程通俗易懂 2.pycharm上传代码到git(巨详细)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-08-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 版本控制
  • 版本控制分类
  • 最常用的版本控制器
  • git工具下载
  • git工具释疑
  • 基本的Linux命令
  • 设置用户名与邮箱(用户标识)
  • Git基本理论
  • 本地仓库搭建
  • 使用码云(Gitee)
  • pycharm内嵌git实操
    • 1.安装gitee插件
    • 2.登陆gitee账号
    • 3.在pycharm内设置gitee
    • 4.创建项目
    • 5.添加项目到暂存区
    • 6.添加项目到本地仓库
    • 7.上传到远程仓库
  • 其它补充
    • git上传时忽略掉一些文件(.gitignore)
    • git一些分支操作
    • git上传时带上依赖库
  • 参考资料
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档