Git工作机制
Git常用命令
命令名称 | 作用 |
---|---|
git config --global user.name 用户名 | 设置用户签名 |
git config --global user.email 邮箱 | 设置用户签名 |
git init | 初始化本地库 |
git status | 查看本地库状态 |
git add 文件名 | 添加文件到暂存区 |
git rm --cached 文件名 | 将文件从暂存区移除 |
git commit -m “日志信息” 文件名 | 提交文件到本地库 |
git reflog | 查看历史记录 |
git log | 查看版本详细信息 |
git reset --hard 版本号 | 版本穿梭 |
其他常用命令
命令名称 | 作用 |
---|---|
vim 文件名 | 打开(新建)文件 |
cat 文件名 | 查看文件内容 |
Insert键 | 编辑模式 |
Esc键 | 退出编辑模式 |
yy | 复制行 |
p | 粘贴行 |
:wq | 保存文件并退出 |
:q! | 取消保存文件并退出 |
Ctrl + Insert | 复制 |
Shift + Insert | 粘贴 |
ll(两个字母L) | 列出当前目录的所有文件和文件夹 |
Ctrl + L | 清屏 |
Git分支操作
命令名称 | 作用 |
---|---|
git branch 分支名 | 创建分支 |
git branch -v | 查看所有分支 |
git checkout 分支名 | 切换到指定分支上 |
git merge 分支名 | 把指定的分支合并到当前分支上 |
分支合并时产生的冲突
冲突产生的原因:两个不同的分支本来指向的都是同一个版本,然后这两个分支对于同一个文件做出了不同的修改,并且都提交到了本地库,此时如果想将其中一个分支合并到另一个分支,就会产生冲突,Git无法替我们决定合并哪一个,必须人为决定新代码的内容。
—分割线—
举例:
1、master
分支本来指向的是第一个版本的hello.txt
,接下来我们创建了cici
分支,它默认指向的也是master
分支的第一个版本的hello.txt
。
2、随后我们切换到cici
分支对这个文件进行修改,然后add
—>commit
;再切换到master
分支对这个文件进行修改,然后add
—>commit
。
3、最后在master
分支下将cici
分支合并,合并时就会产生冲突,我们需要打开hello.txt
文件手动合并,然后add
,然后commit
(需要注意,这个commit
时不能带有文件名)。
Git团队协作机制
- 团队内协作
- 跨团队协作
GitHub操作
远程仓库操作
命令名称 | 作用 |
---|---|
git remote -v | 查看当前所有远程仓库地址的别名 |
git remote add 别名 远程仓库地址 | 给远程仓库地址起一个别名 |
git push 别名 分支 | 推送本地某个分支上的内容到远程仓库 |
git clone 远程仓库地址 | 将远程仓库的内容克隆到本地 |
git pull 远程仓库地址别名 远程分支名 | 将远程仓库对应分支最新内容拉下来后与当前本地分支直接合并 |
克隆会进行如下操作:拉取代码、初始化本地库、创建别名(origin)。