新手必看!GitHub基础认知、环境搭建与命令实战

新手必看!GitHub基础认知、环境搭建与命令实战一 GitHub 基础认知 GitHub 是基于 Git 的代码托管平台 在全球开发者社区至关重要 能助力开源项目协作及个人代码管理 深入学习前 先了解关键概念 仓库 Repository 如同项目专属文件夹 存放项目代码与相关文件

大家好,欢迎来到IT知识分享网。

一、GitHub 基础认知

GitHub是基于Git的代码托管平台,在全球开发者社区至关重要,能助力开源项目协作及个人代码管理。

深入学习前,先了解关键概念:

仓库(Repository):如同项目专属文件夹,存放项目代码与相关文件。

分支(Branch):开发者可独立开发、实验,不影响主代码。主分支一般是稳定版本,其他分支用于功能开发、修复漏洞等。

提交(Commit):每次代码修改保存即为一次提交,需添加描述,便于追溯代码变更。

二、环境准备

使用GitHub前需安装Git。

以Windows系统为例,从Git官网(https://git – scm.com/downloads )下载安装包,安装时大多选项默认即可。

安装完成,打开命令行工具(如Git Bash),输入 git –version 验证,显示版本号即安装成功。

为安全与GitHub交互,还需配置SSH密钥:

1. 生成SSH密钥,在命令行输入

ssh - keygen -t rsa -b 4096 -C ""

一路回车采用默认设置,密钥对将生成在用户主目录的 .ssh 文件夹。

2. 查看公钥,输入:

cat ~/.ssh/id_rsa.pub

复制公钥内容。

3. 在GitHub网站的Settings -> SSH and GPG keys中添加公钥,实现SSH安全连接。

三、常用命令详解

(一)初始化仓库

在本地新建项目文件夹,进入命令行界面,执行:

git init

此命令会在当前目录生成隐藏的.git文件夹,用于跟踪管理项目版本信息。

若想初始化带有特定模板的仓库,可借助工具(如 cookiecutter ),先安装 cookiecutter :

pip install cookiecutter

然后基于模板初始化仓库,如初始化Python项目模板:

cookiecutter gh:audreyr/cookiecutter – pypackage

(二)添加与提交文件

1. 添加文件

将文件添加到暂存区,添加单个文件,如 index.html ,命令如下:

git add index.html

添加目录下所有文件,使用:

git add .

若只想缓存文件特定修改,用

git add -p 

它会以交互模式逐块选择要添加的修改。

此外, git add -i 可进入交互式添加模式,进行更细致的文件添加操作,比如按文件状态、路径等筛选添加。

2. 提交文件

将暂存区文件提交到本地仓库,提交时添加提交信息,描述本次修改内容:

git commit -m "Initial commit, add index.html"

-m 参数指定提交信息。若想补充或修改最近一次提交信息,用

git commit --amend 

它会打开默认编辑器供你修改。若想一次性提交多个修改并分别描述,可使用

 git commit -m "commit1" -m "commit2" 

(三)分支操作

1. 查看分支

查看当前仓库分支情况,执行:

git branch

默认显示当前所在主分支 master (新Git版本中主分支可能是 main ),当前分支前有 * 标识。

查看所有分支(包括远程分支),用

git branch -a 

若要查看分支详细信息,包括最后一次提交、提交者等,可使用

 git branch -v 

2. 创建分支

创建名为 feature-new 的新分支,命令为:

git branch feature-new

3. 切换分支

切换到已创建的 feature – new 分支,使用:

git checkout feature - new

更简洁的创建并切换分支方式:

git checkout -b feature - new

切换到远程分支并在本地创建对应的跟踪分支,用

git checkout --track origin/branch-name 

若要切换到上一个分支,可使用

git checkout - 

4. 合并分支

在 feature-new 分支完成开发,合并到主分支,先切换到主分支:

git checkout master

然后执行合并命令:

git merge feature-new

合并时希望保留分支合并历史,形成合并提交,用 git merge –no – fast-forward feature-new 。

若合并过程中出现问题,可使用下列命令:

git merge --abort 

(四)远程仓库操作

1. 关联远程仓库

在GitHub网站创建好远程仓库后,关联本地与远程仓库。

假设远程仓库地址为
https://github.com/username/repository – name.git ,执行:

git remote add origin https://github.com/username/repository - name.git

origin 是远程仓库默认别名。若需修改远程仓库地址,先删除原配置:

git remote remove origin

然后重新添加新地址。若要查看远程仓库详细信息,可使用 git remote show origin 。

2. 推送代码

将本地主分支代码推送到远程仓库,命令如下:

git push -u origin master

首次推送加 -u 参数,建立本地与远程分支关联,后续推送只需 git push 。

推送其他分支,如 feature – new ,则:

git push origin feature - new

想要强制推送(谨慎使用,可能覆盖远程仓库内容),用

git push -f origin branch - name 

若要推送本地所有分支,可使用

git push --all origin 

3. 拉取代码

从远程仓库获取最新代码并合并到本地,执行:

git pull origin master

若只想获取远程仓库更新而不自动合并,用

git fetch origin 

之后手动决定如何合并,如

git merge origin/master 

若要将远程分支代码拉取到本地新分支,可使用

git checkout -b new_branch origin/remote_branch 

四、解决冲突

多人协作开发可能出现代码冲突。

执行 git merge 或 git pull 发现冲突,Git会标记冲突文件。

打开冲突文件,会看到类似标记

<<<<<<< HEAD

当前分支的代码

=======

要合并分支的代码

>>>>>>> branch – name

手动修改文件,保留正确代码,删除冲突标记,然后重新添加和提交文件:

git add conflict - file.txt git commit -m "Resolve conflict"

解决冲突过程中想放弃当前修改,回到冲突前状态,用

git checkout --conflict=merge conflict - file.txt

恢复文件,然后重新处理冲突。若要查看冲突文件列表,可使用

git diff --name - only --diff- filter=U 

通过熟练掌握这些GitHub命令,开发者能高效管理代码,与团队协同工作,充分利用GitHub强大功能,提升开发效率。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/174276.html

(0)
上一篇 2025-03-23 09:20
下一篇 2025-03-23 09:25

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信