一 在线上传文件夹

在线上传也可以上传完整的文件夹结构,直接拖拽到上传文件页面的框中即可。

1.1点击上传文件

img

点击上传

1.2 直接拖拽

直接拖拽即可上传文件夹及文件夹里面的文件。如果点击* choose your files *就只能上传单个文件。

img

直接拖拽

二 通过git工具上传本地文件夹(本地项目)

2.1 下载git工具

img

选择对应版本下载

2.2 下载完成后安装完成,注意在安装过程中可以选择创建桌面快捷方式

img

桌面快捷方式

2.3 绑定用户

打开git-bash.exe(直接在桌面上点击右键,或者点击开始按钮找到Git Bash)

img

运行gitBash.gif

在打开的GIt Bash中输入以下命令(用户和邮箱为你github注册的账号和邮箱)

1
2
3
4
5
$ git config --global user.name "hanyuntao"



$ git config --global user.email "hanyuntaocn@163.com"

img

Paste_Image.png

2.4 设置SSH key(git中sshkey有何作用?

2.4.1 生成ssh key

首先检查是否已生成密钥cd ~/.ssh,如果返回的ls有3个文件,则密钥已经生成。

img

密钥生成

如果没有密钥,则通过

1
$ ssh-keygen -t rsa -C "hanyuntaocn@163.com"

生成,生成过程中一路按3次回车键就好了。(默认路径,默认没有密码登录)
生成成功后,去对应目录C:\Users\hyt.ssh里(hyt为电脑用户名,每个人不同)用记事本打开id_rsa.pub,得到ssh key公钥。

img

ssh key公钥

2.4.2 为github账号配置ssh key

切换到github,展开个人头像的小三角,点击settings,然后打开SSH keys菜单, 点击Add SSH key新增密钥,填上标题(最好跟本地仓库保持一致)。

img

设置sshkey.gif

接着将id_rsa.pub文件中key粘贴到此,最后Add key生成密钥吧。\

2.5 上传本地项目到github

2.5.1 创建一个本地项目

这是我自己创建的几个文件夹及文件。

img

本地项目

2.5.2 建立本地仓库

1.首先进入text文件夹

1
cd d:text

img

首先进入text文件夹

2.执行指令:git init

img

执行git init

初始化成功后你会发现项目里多了一个隐藏文件夹.git

img

隐藏的文件夹

3.执行指令:git add .
将所有文件添加到仓库

img

执行git add .

4.执行指令:git commit -m "提交文件"
双引号内是提交注释。

img

提交文件

2.5.3 关联github仓库

1.到github text仓库复制仓库地址

img

复制仓库地址

2.执行指令:git remote add origin https://github.com/hanyuntao/text.git

img

执行指令

2.5.4 上传本地代码

执行指令:git push -u origin master

img

执行指令

2.5.5完成了

可以看到我们的本地项目已经上传到了github上了。

img

完成了

** 注意:git是不能管理空的文件夹的,文件夹里必须有文件才能上传。 **

参考资料:git中sshkey有何作用?
github入门到上传本地项目


Github合并分支全面用法介绍

更新:2023-05-27 05:36

一、基本概念

Git是一种分布式版本控制系统,它是由Linus Torvalds开发的,相比于集中式版本控制系统,Git具有分布式的优点,因此很适合在开源社区中使用,而Github则是一个基于Git的代码托管平台,提供了方便的代码托管、版本控制、协作开发、部署等功能。

在Github上,每个开发者可以克隆主分支(Master),并且在本地新建一个分支(Branch)进行开发,当完成开发后,将分支合并到主分支上再推送到Github服务器上,其他开发者可以通过拉取主分支或者新分支进行升级完善。因此,分支的合并是Github的一个非常重要的操作。

二、分支合并到主分支的几种方式

1.使用Github网站上的Pull Request

这种方式比较适合对于分支内容比较复杂的情况,通过Pull Request可以方便地对分支进行评审,讨论,修改等操作,确保分支代码的质量,然后再将分支合并到主分支上。

示例代码:

1
2
3
4
5
6
// 假设本地修改了一个分支new_feature,将new_feature分支合并到主分支上
1. 在Github网站上访问目标项目仓库(repository)
2. 点击New pull request按钮(一般在仓库标题下方),进入Pull Request页面
3. 选择new_feature和Master分支进行比较
4. 如果有必要,添加描述信息
5. 创建Pull Request,并等待管理员的审核和处理

2.使用Git命令行工具进行合并

这种方式比较适合对于分支内容比较简单的情况,使用命令行工具可以方便地对分支进行合并和推送。

示例代码:

1
2
3
4
// 假设本地修改了一个分支new_feature,将new_feature分支合并到主分支上
1. git checkout master // 切换到主分支
2. git merge --no-ff new_feature // 将new_feature分支合并到主分支上
3. git push origin master // 推送主分支到服务器上

三、分支合并的注意事项

1.冲突解决

在分支合并的过程中,有可能会出现代码冲突的情况,这时合并会失败,需要手动解决冲突后再重新合并。

解决冲突的方法一般有两种:

示例代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// 假设合并分支到主分支失败了
1. 根据提示,找到代码发生冲突的文件
2. 手动修改代码,删除冲突部分,解决冲突
// 例如下面的代码出现了冲突
<body>
<p>hello world</p> // 主分支
<p>hello github</p> // new_feature分支
</body>
// 修改为
<body>
<p>hello github</p>
</body>
3. 执行git add和git commit命令,将修改的代码提交到本地仓库中
4. 再次执行git merge或者git pull命令,完成分支合并

2.分支保护

分支保护是为了防止误操作或者非法修改,在Github上可以设置分支保护规则,如只允许有特定权限的人进行合并和删除等操作。

示例代码:

1
2
3
4
5
6
// 假设需要保护主分支,不让普通开发者随便合并分支
1. 进入Github仓库的Settings页面
2. 选择Branches标签页
3. 在Protected branches一栏中,选择需要保护的分支,比如Master
4. 勾选上Protect this branch,即生效了分支保护
5. 可以配置提交审核和合并审核的人员列表,只有审核通过才能合并分支

3.持续集成

持续集成是现代化开发中的一个非常重要的环节,它的目标是尽早发现和解决软件开发过程中的问题。

在Github上,可以配置持续集成服务,如Travis CI或者CircleCI等,每次有新代码提交到仓库时,持续集成服务会自动编译,运行测试程序,检查代码规范等,如果发现了问题,会立刻通知开发者。

示例代码:

1
2
3
4
5
// 假设需要配置持续集成服务
1. 在Github上为项目仓库添加持续集成服务,如Travis CI或者CircleCI
2. 在持续集成服务上配置编译,测试等任务
3. 每次有新代码提交到仓库时,持续集成服务会自动执行任务
4. 如果有错误或者警告,集成服务会向开发者发送邮件或者短信

4.代码回退

如果在合并分支的过程中出现了不可预料的错误或者问题,可以回滚代码,恢复到之前的状态,避免对项目产生负面影响。

示例代码:

1
2
3
4
5
6
7
8
9
// 假设需要回退到之前的版本
1. 使用git log命令查看提交记录,找到需要回退的版本号commit_id
2. 执行git revert命令,回退代码
// 回退到commit_id版本号时的状态
git revert 71f9301
3. 提交并推送代码到服务器上
git add .
git commit -m "revert code"
git push origin master

四、总结

分支合并是Github的一个重要功能,它能够有效地提高协作开发的效率,但是也需要注意冲突解决,分支保护,持续集成,代码回退等问题,以保证项目开发的质量和可靠性。