零基础1小时上手git

举报
zstar 发表于 2022/08/06 00:59:14 2022/08/06
【摘要】 版本控制 版本控制的优点: 实现跨区域多人协同开发追踪和记载一个或者多个文件的历史记录组织和保护你的源代码和文档统计工作量并行开发、提高开发效率跟踪记录整个软件的开发过程减轻开发人员的负担,节省时间,...

版本控制

版本控制的优点:

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

版本控制分类

  1. 本地版本控制
    在这里插入图片描述
    最原始的版本控制,类似自动创建多个快照

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

  3. 分布式版本控制
    在这里插入图片描述
    每个用户都拥有全部数据,加强了数据的安全稳定性,但增加了本地存储空间的占用。

最常用的版本控制器

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,输入下面的命令进行设置。
设置用户名:

 git config --global user.name "zstar"

  
 
  • 1

设置邮箱:

 git config --global user.email zstar1003@163.com

  
 
  • 1

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

git config --global --list

  
 
  • 1

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内输入

git add .

  
 
  • 1

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

6.添加项目到本地仓库

当暂存区不会空时,就可以勾选这个commit
在这里插入图片描述
选择需要上传的文件到本地仓库,并写提交信息。
在这里插入图片描述

7.上传到远程仓库

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

git push

  
 
  • 1

push后面可以添加分支,默认origin master.
成功上传到远程平台。
在这里插入图片描述

其它补充

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

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

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

# pycharm
.idea/
.DS_Store

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

# Django stuff:
local_settings.py
*.sqlite3

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

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

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

git一些分支操作

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

# 列出所有本地分支
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]

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

git上传时带上依赖库

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

参考资料

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

文章来源: zstar.blog.csdn.net,作者:zstar-_,版权归原作者所有,如需转载,请联系作者。

原文链接:zstar.blog.csdn.net/article/details/119975990

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。