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

360影视 动漫周边 2025-03-17 23:54 2

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

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 "your_email@example.com"

一路回车采用默认设置,密钥对将生成在用户主目录的 .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 --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会标记冲突文件。

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

当前分支的代码

=======

要合并分支的代码

>>>>>>> branch - name

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

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

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

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

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

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

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

来源:三戒逍遥

相关推荐