Skip to content

GitHub Desktop基础操作

1. 操作仓库

Alt text

1.1 创建本地仓库

选择上图中的第二个带+按钮或者从菜单File--new repository进入创建本地仓库页面:
Alt text 创建local_test1本地仓库:
Alt text 点击Create repository即可完成本地仓库创建,进入仓库管理页面:
Alt text

1.2 移除仓库

Alt text 点击不勾选,表示GitHub Desktop不再管理该仓库:
Alt text 点击Remove即可移除local_test1本地仓库。

1.3 导入本地仓库

点击File--Add local repository,弹出选择本地文件夹路径地址:
Alt text 选择之前的local_test1本地仓库,点击Add repository即可导入本地仓库 Alt text

1.4 删除本地仓库

Alt text 点击勾选,表示物理删除该仓库信息:
Alt text 可以查看回收站,仓库文件夹已经在回收站了:
Alt text

2. 文件操作

点击Show in Explort进入仓库文件目录下:
Alt text 目录下的.git文件夹是git自己管理记录版本信息的,我们不能操作它。
Alt text

2.1 新增文件

在local_test1文件夹下面新创建文件a.txt,并写入信息。返回GitHub Desktop软件中,会发现会自动识别新增了a.txt文件:
Alt text
原因在于GitHub Desktop软件有文件比对的功能,底层会去读取.git文件夹,发现git本地仓库中没有该文件,值得一提的是此时a.txt文件还没有在git仓库中,我们要将a.txt文件纳入git的管理,需要手动提交:
Alt text 整个操作流程:
Alt text

2.3 更改文件

修改a.txt文件,返回GitHub Desktop软件中,会发现会自动识别更改了a.txt文件:
Alt text 提交a.txt文件的修改,每次提交后git都会生成一个版本号,它是由40位16进制的编码组成:
Alt text 多次提交的版本可以直接在History页面查看区别,可以看到每次提交的版本号:
Alt text 整个流程如下:
Alt text

2.4 删除文件

删除a.txt文件,返回GitHub Desktop软件中,会发现会自动识别删除了a.txt文件:
Alt text 如果提交a.txt文件的修改,git中存的a.txt也会被删除同时变更版本号。
Alt text 如果此时在重新创建a.txt文件,git会认为它是新增的文件:
Alt text 整个操作流程:
Alt text

3. 分支管理

不同的用户向git仓库提交文件,提交次数不同提交顺序也不同就显得比较乱,git提出分支的概念,各个用户维护自己的分支,可以理解为不同分支就是仓库的副本,此时仓库不止一个。这么多仓库最后会有个合并的操作,最终就有一个仓库是对应最开始的仓库。
创建一个local-test-branch仓库:
Alt text

3.1 创建分支

假设有zhangsan、lisi、wangwu是项目成员,其中wangwu是管理员,具有管理权限,zhangsan和lisi分别开发user模块、order模块,wangwu给zhangsan和lisi创建user、order分支:
Alt text 点击Current branch下拉框后,点击new branch按钮,弹出对话框:
Alt text 填写分支名为:user,点击Create branch按钮:
Alt text 填写分支名为:order,选择基于main分支创建,点击Create branch按钮:
Alt text 再次点击Current branch下拉框,可以看见现在local-test-branch仓库一共拥有三个分支:
Alt text

3.2 分支维护

假如现在zhangsan开发user分支,创建user.txt, lisi开发order分支,创建order.txt,并分别提交到各自的分支上。

  1. 点击user分支,GitHub Desktop软件自动切换从main分支切换到user分支:
    Alt text
  2. 点击Show in Explore按钮,在仓库目录中添加user.txt,并添加内容。 Alt text 提交user.txt文件:
    Alt text
  3. 按照上述办法切换到order分支,创建order.txt文件并添加内容。 Alt text
  4. 提交order.txt文件:
    Alt text
  5. 切换到main分支,点击Show in Explore按钮,可见既没有order.txt也没有user.txt:
    Alt text
  6. 合并user分支到main分支。点击Choose a branch to merge into main按钮:
    Alt text
  7. 在弹出框中,选项需要合并的分支:user分支,并点击Create a merge commit按钮:
    Alt text
  8. 点击合并后,提示合并成功:
    Alt text
  9. 再次点击Current branch下拉框,点击Choose a branch to merge into main按钮:
    Alt text
  10. 在弹出框中,选项需要合并的分支:order分支,并点击Create a merge commit按钮:
    Alt text
  11. 点击合并后,提示合并成功:
    Alt text
  12. 切换会main分支,查看文件目录,发现多了order.txt和user.txt文件:
    Alt text
  13. 整个流程如图所示:
    Alt text

4. 标签

我们提交代码的时候可以手动填写日志,可以清晰知道提交的代码的作用。但是git在合并的时候并没有文字信息说明,它是git自动完成的,我们没办法添加日志,但是可以添加标签,显示每次合并的作用。
在History页面中,选择Merge操作,然后鼠标右键选择Create Tag:
Alt text 弹出设置tag的页面:
Alt text 输入内容后,点击Create Tag按钮,即可看到当前Merge操作的日志信息:
Alt text

5. 远程仓库

5.1 连接GitHub远程仓库

登录自己提前在GitHub上注册的账号 Alt text 点击Publish可以将当前项目创建到GitHub上面。 Alt text 点击Publish repository按钮,开始发布本地仓库文件到远程:
Alt text 发布过程中,会有个等待过程:
Alt text 访问github查看已经发布的仓库信息:
Alt text 可以看到github上面已经保存了本地的local-test-branch仓库信息:
Alt text

5.2 连接Gitee远程仓库

前面使用GitHub创建远程仓库,如果是远程仓库先于本地创建的话,那么开发之前需要先从远程仓库拉取代码然后再做开发。
登录Gitee网站,准备拉取代码:
Alt text 比如我选择autumn-boot项目,它是spring-boot的简化版项目,点击克隆/下载按钮,得到项目具体地址信息:
Alt text 打开Github Desktop软件,点击File--Clone repository菜单:
Alt text 进入Url的tab页面,输入autumn-boot项目地址信息,点击clone按钮即可下载远程仓库到本地:
Alt text 下载后添加README.md文件,点击Commit master:
Alt text 点击推送到Gitee远程仓库:
Alt text 访问Gitee网站,查看提交的文件:
Alt text

6. README和Ignore操作

6.1 README文件

README文件一般出现在项目代码的根目录,作用是对项目内容的描述,方便开发者对项目的维护,快速了解项目信息,Git推荐开发者提供README文档。项目初始化的时候Github Desktop提示添加README文件:
Alt text

6.2 Ignore文件

在Git中,.gitignore文件用于指定哪些文件或目录不应该被Git版本控制。这个文件非常重要,因为它可以帮助开发者避免将不必要的文件(例如临时文件、编译文件、敏感信息等)提交到Git仓库。提交代码的时候,鼠标右键弹出是否忽略文件菜单:
Alt text
.gitignore文件对于常见的一些文件忽略配置如下:

ini
# 忽略 Node.js 的依赖文件夹  
node_modules/
# 忽略所有的日志文件  
*.log
# 忽略编译后的文件  
/dist
/build
/target
# 忽略 IDE 特定的文件  
.vscode/
.idea/

提示

  • .gitignore文件只对尚未被Git跟踪的文件有效。如果某个文件已经被添加到Git仓库中,要使其不再被跟踪,需要先将其从Git中移除。
  • .gitignore文件本身是可以被版本控制的。可以将.gitignore文件提交到你的Git仓库,以便团队中的其他成员使用相同的忽略规则。