工具使用教程 (一)【Git从原理到入门实用教程】

简介: 工具使用教程 (一)【Git从原理到入门实用教程】

git是一个版本管理工具。是一个分布式的版本控制系统,与svn集中式相比,它没有中央服务器。每台个人电脑就是一个版本库,每个开发人员提供自己的修改代码到共享版本库(也称作远程仓库)中即可。

  远程仓库和本地版本库的内容是一模一样的。svn则必须连接到服务器上才能完成代码的提交和修改。

Git常用命令流程

  由Git常用命令流程图所示,可以看到右下角有一个本地仓库的闭环。先是创建本地仓库,本地仓库创建好了之后,就可以在里面添加代码,之后代码放入工作区,如果想把代码加入到本地仓库中去的话,先需要将其放入暂存区,之后通过commit将其提交到本地仓库中去。若想再修改,还可以把它checkout下来,这样就形成了一个本地的闭环。

  当需要与别人协作的时候,我们将本地仓库复制一份到远程仓库即可(push)。其他开发人员可以clone一份到自己的本地仓库即可。

  如果想拿到别人更改后的代码,将其pull下来就可以。

Git安装

使用本地版本库

创建

  建立本地仓库时需要一个空的文件夹,之后在这个文件夹下初始化即可:

git init
• 1

  创建完成之后会生成一个隐藏文件夹.git。到此就创建好了本地仓库。一旦创建了一个本地仓库,默认就会带上一个分支,这个分支叫主分支(master)。

添加文件到暂存区

  .git叫做本地版本库,包含.git的文件目录叫做工作目录。如果想要在本地仓库中添加一个文件的话,这个文件必须要在工作目录下面。

  通过git status命令用于查看项目的当前状态。

git status
• 1

  如果新建一个文件在此目录下,我们可以将其添加到暂存区(并非本地仓库)中。

git add XXX.cpp/readme.md等
• 1

  除此之外还可以:

git add . 将当前目录下修改的所有代码从工作区添加到暂存区 . 代表当前目录
• 1

  手动为本地仓库取一个origin的别名:

git remote add origin https://github.com/XXX.git
• 1

添加文件到本地仓库

  添加到暂存区之后可以通过commit提交到本地仓库。此处提交需要写日志。到此文件就已经添加到本地仓库中去了。

git commit -m "first commit"
• 1

  范式为:

git commit -m ‘注释’ 将缓存区内容添加到本地仓库
• 1

Git 为你的每一个提交都记录你的名字与电子邮箱地址,所以第一步需要配置用户名和邮箱地址。

git config --global user.name 'runoob'
git config --global user.email test@runoob.com

修改文件

  若文件有修改,我们需要先提交到暂存区,之后再提交到本地仓库。

删除文件

   要从Git中移除某个文件,就必须要从已跟踪文件清单中移除,然后提交。可以用以下命令完成此项工作

git rm <file>
• 1

   如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f

git rm -f <file>
• 1

  删除版本库中的文件,但本地保留此文件。

git rm --cached <file>
• 1

  当执行 git rm --cached <file>命令时,会直接从暂存区删除文件,工作区则不做出改变。

  当执行 git checkout .或者 git checkout -- <file>命令时,会用暂存区全部或指定的文件替换工作区的文件。这个操作很危险,会清除工作区中未添加到暂存区的改动。

GitHub上创建仓库

  在实际开发过程中,我们需要多个人操作同一个代码,因此需要远程仓库。

  Github上面创建仓库直接界面化操作就可以了。创建好之后我们就有了一个远程仓库。

  远程仓库建立好之后,我们需要建立一个本地仓库和远程仓库的一个连接。

git remote add origin https://XXX/XXX.git
• 1

  其中的origin是一个通用的叫法,代表是哪个远程仓库。也可以取名origin1等。

本地代码推送到远程仓库

  git push的一般形式为 git push <远程主机名> <本地分支名> <远程分支名>

git push -u origin master
• 1

  将本地的文件推送到远程服务器即可。第二次提交使用时,如果还是提交到原来的库,可以直接用git push ,不需要重新git remote add ...,再git push...,如果代码更新也可以用上面的步骤。

  如果远程仓库已经有了的话,直接建立连接,然后push就可以了。

创建ssh密钥及在Github上配置公钥

  1. 生成本地密钥
ssh-keygen -t rsa -C "注册Github用的邮箱"
• 1

  生成完之后通过以下命令获得一串密钥

cd ~/.ssh 
cat id_rsa.pub

  然后拿着这一串密钥到GitHub主页 SSH and GPG keys 添加New Key

推送修改的文件及冲突解决

  不能说每次都推送全部的文件,我们修改了那个文件就推送哪个文件就可以了。

  在拉取和推送的时候经常会遇到冲突的问题。意思就是当另外一个用户更新了服务端的代码,而你本地的代码不是最新的,再次做修改之后是无法推送上去的。所以我们需要将远端的拉取下来,然后对比所修改的文件,之后进行手动修改。

  更新最新版本:

git pull origin master
• 1

分支管理

  当你执行 git init 的时候,默认情况下 Git 就会为你创建 master 分支(现在这个分支变成了main)。

  创建分支命令:

git branch (branchname)
• 1

  没有参数时,git branch 会列出你在本地的分支。

  切换分支命令:

git checkout (branchname)
• 1

  删除分支命令:

git branch -d (branchname)
• 1

分支合并

  一旦某分支有了独立内容,你终究会希望将它合并回到你的主分支。 你可以使用以下命令将任何分支合并到当前分支中去:

git merge (branchname) -m "xxx"
• 1
相关文章
|
22天前
|
数据可视化 开发工具 C#
.NET开源、免费、跨平台的Git可视化管理工具
俗话说得好“工欲善其事,必先利其器”,合理的选择和使用可视化的管理工具可以降低技术入门和使用的门槛。今天大姚给大家分享一款.NET Avalonia开源、免费、跨平台、快速的Git可视化管理工具:SourceGit。
|
23天前
|
开发工具 git
Git教程:深入了解删除分支的命令
【4月更文挑战第3天】
43 0
Git教程:深入了解删除分支的命令
|
2月前
|
存储 Shell Linux
【Shell 命令集合 文件管理】Linux git命令使用教程
【Shell 命令集合 文件管理】Linux git命令使用教程
34 0
|
2月前
|
开发工具 git 索引
【git】入门
【git】入门
34 2
|
3月前
|
安全 开发工具 git
git使用教程
git使用教程
50 0
|
22小时前
|
前端开发 持续交付 开发工具
【专栏:工具与技巧篇】版本控制与Git在前端开发中的应用
【4月更文挑战第30天】Git是前端开发中的必备工具,它通过分布式版本控制管理代码历史,支持分支、合并、回滚等操作,促进团队协作和冲突解决。在前端项目中,Git用于代码追踪、代码审查、持续集成与部署,提升效率和质量。优化协作包括制定分支策略、编写清晰提交信息、定期合并清理分支及使用Git钩子和自动化工具。掌握Git能有效提升开发效率和代码质量。
|
1天前
|
存储 安全 开发工具
Git 保姆级教程(一):Git 基础
Git 保姆级教程(一):Git 基础
|
16天前
|
数据可视化 开发工具 git
Git代码版本管理入门
Git代码版本管理入门
|
24天前
|
开发工具 git
|
2月前
|
开发工具 git
Git版本控制工具详解(三)
Git版本控制工具详解
35 0

相关实验场景

更多