Git 是一个强大的版本控制系统,广泛用于软件开发中,用于跟踪文件的更改、协作工作等。无论你是新手还是有经验的开发者,掌握 Git 都是非常有益的。这篇博客将带你了解 Git 的基本使用,希望能帮助你快速入门并有效使用 Git。
1. 创建和克隆仓库
初始化仓库
要在当前目录创建一个新的 Git 仓库,只需执行:
bash
git init
执行后,当前目录下会生成一个 .git
目录,包含所有 Git 需要的数据和资源。
如果想指定一个新目录作为 Git 仓库,可以使用:
bash
git init newrepo
这将在 newrepo
目录下创建 .git
目录。
添加和提交文件
要开始跟踪文件,使用 git add
命令:
bash
git add *.c
git add README
这些命令添加所有 .c
文件和 README
文件到暂存区。然后,使用 git commit
提交这些文件:
bash
git commit -m '初始化项目版本'
克隆现有仓库
如果需要复制或克隆现有的 Git 仓库,使用:
bash
git clone <repo>
例如,要克隆远程 Git 仓库 Grit:
bash
git clone git://github.com/schacon/grit.git
可以在命令后指定目录名,更改克隆的本地目录名:
bash
git clone git://github.com/schacon/grit.git mygrit
2. Git 工作流
基本工作流
Git 的工作流程包括三个主要区域:工作目录、暂存区和 HEAD。
- 工作目录:持有实际文件。
- 暂存区:临时保存改动。
- HEAD:指向最后一次提交的结果。
添加文件到暂存区:
bash
git add <filename>
git add .
提交改动到仓库:
bash
git commit -m "代码提交信息"
推送改动
将本地仓库的改动推送到远程仓库:
bash
git push origin master
其中 master
可以替换为你想推送的任何分支。
3. 分支管理
创建与切换分支
查看所有分支:
bash
git branch
创建新分支:
bash
git branch new-feature
切换到新分支:
bash
git checkout new-feature
或者创建并切换到新分支:
bash
git checkout -b new-feature
合并分支
将更改从 new-feature
合并到 master
分支:
bash
git checkout master
git merge new-feature
如果不再需要 new-feature
分支,可以将其删除:
bash
git branch -d new-feature
4. 更新与合并
获取并合并远程仓库的改动到当前分支:
bash
git pull
或者,如果只想获取远程分支的更新:
bash
git fetch
然后合并到当前分支:
bash
git merge origin/master
5. 实用小贴士
内建的图形化 Git
bash
gitk
彩色的 Git 输出
bash
git config color.ui true
显示历史记录的简洁格式
bash
git config format.pretty oneline
交互式添加文件到暂存区
bash
git add -i