github转向git
读完github上面的README文件后,跳过配置环境(pycharm,git等的安装,电脑上已经存在)来到git的学习,
我觉得配置环境在git克隆项目之前,安装依赖在克隆项目之后。
为什么要 git clone
GitHub (国外)和 Gitee (国内)都是基于 Git 的代码托管平台允许开发者将他们的项目代码存储在云端的仓库中,以实现代码的备份、版本控制、协作开发和分享。其他开发者可以克隆(Clone)这些远程仓库,从而获得完整的项目代码。
我们要使用或者学习别人的项目时可以克隆到本地,用自己电脑上的相关软件打开进行研究。
git相关知识
Git 是一种分布式版本控制系统
分布式版本控制: 每个开发者都可以拥有完整的版本控制库,包括完整的版本历史记录。
Git通过下面三个区域管理代码不同阶段
工作目录: 实际工作的目录,包含项目的所有文件。
暂存区:暂存区是一个缓存区域,保存着所做修改,但还没有提交到 Git 仓库。
本地仓库: 本地仓库是保存在计算机上的完整的 Git 仓库,包括所有历史记录、分支等。
做项目需要学习git
git可以使得多人协同开发
git可以让我们找回修改前的代码
git使用
先在桌面上建个空文件夹熟悉一下不直接去项目所在文件夹操作.
图标1地方是新建的空文件夹
2就是右键,打开 Git Bash(一个Windows平台上运行的命令行工具)
3就是打开的git bash ,能看到现在目录是我电脑d盘的桌面下
所以我cd test1进入我创建的空文件夹中
配置用户信息
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
查看当前仓库的用户信息
git config --get user.name
git config --get user.email
把我当前所在目录变成一个Git仓库
git init
查看工作区和暂存区的状态,看看有没有文件没被添加到暂存区
git status
将文件添加到暂存区
git add
将已经在暂存区的更改提交到本地仓库
git commit -m "描述提交信息"
将当前分支的 HEAD 指针、暂存区和工作目录都重置为指定的提交状态
git reset --hard
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
git init (初始化为Git仓库)
本来空的文件夹会多出一个.git子目录,它包含Git仓库所有信息暂时不需要我学习
本来命令行中目录/test1会变成/test1(master),master就表示当前正处在Git仓库的主分支上
git status
可以看到当前目录有新建的word文档,但是他并没有添加到暂存区
git add(添加到暂存区)
这个就是用git add 把文件添加到暂存区,怎么知道添加没有就用git status查看
No commits yet: 这说明当前仓库还没有进行过提交,没有版本历史记录
Changes to be committed: 这是将要被提交的更改,即已经被添加到暂存区的更改,说明word1已经被提交到暂存区
所以接下来就是把文件提交到仓库
git commit (提交到仓库)
git commit -m "第一次提交“
引号里面是我们对这次提交的描述,如果你要描述的字数很长那么把-m去掉就行,它会打开编辑器让你在里面进行描述,加上-m就是不用每次都打开编辑器省去麻烦
这样它就会把暂存区所有文件都提交了,要提交指定文件,就加上该文件路径
git log 可以查看提交信息,红线哪里很长一段每次提交都会生成不一样的,它是唯一的,下面就是提交作者,提交日期还有提交时的描述了
git reset (版本回退)
修改别人项目时,当我想回到之前的时候就先git log看我做的所有修改
然后git reset --hard cbf5d619ee4807a1d79984e1e292c57f538537f4
hard表示指针,指向指定版本,这个指定版本就是直接复制每个版本后面的哈希值就行,想到哪个版本就去哪个
终端关掉时再打开,git log时就只显示回退后的版本了,使用git reflog(引用日志(reference log))就可以查看仓库的引用历史,找回丢失的提交或分支。
git其它知识
git还有比如,管理修改,撤销修改,对比文件不同和git分支等相关的知识,我想应该用不到,用到的时候会根据具体去学习。
使用git clone
从github上面克隆项目到电脑上有https和ssh两种,ssh要配置东西,所以我是直接选择https协议
- 在GitHub上面找到需要的项目,点击code会有选项,有https,ssh和Github CLI
- 我选择直接用https的,这样直接复制就行,在新建文件夹里面打开git bash 粘贴就行
- ssh要配置,网上会有配置过程,记录一下我生成ssh公钥的过程
直接下载和克隆
可以看到在github上面学习大佬项目时除了克隆还可以直接下载压缩包,两者也有区别。
下载 ZIP不包含版本库的完整历史记录和分支信息
git clone 命令从 GitHub 仓库中获取完整的版本库(包括所有历史记录、分支等)到本地
团对开发使用git
在大学比赛团队管理中
对于队长可以把项目框架搭建然后放到服务器上面(github一般要科学上网,也能放到gitee上面)
对于队长和队员都可以把服务器上面的项目克隆到本地,再创建个人分支并在各自的分支上进行每日开发
不过我不知道具体行动起来是怎样的,因为大学参加团队比赛时一般是划水的也就大三后面做java课设时,和组员试过用gitee来完成,也就参加个人比赛时是认认真真的,这对应到未来参加工作应该就是员工和项目组长
评论记录:
回复评论: