git基本操作
目录
- 基本配置
- 建立本地仓库
- 推送到远程仓库
1 基本配置
1.1 配置基本信息
1 | git config --global user.name “itcast” |
1.2 查看配置信息
1 | git config --global user.name |
1.3 设置常用指令别名
打开用户目录,创建 .bashrc 文件
部分windows系统不允许用户创建点号开头的文件,可以打开gitBash,执行touch ~/.bashrc
在 .bashrc 文件中输入如下内容:
1 | #用于输出git提交日志 |
- 打开gitBash,执行
source ~/.bashrc
1.4 解决GitBash乱码问题
- 打开GitBash执行下面命令
1 | git config --global core.quotepath false |
${git_home}/etc/bash.bashrc
文件最后加入下面两行
1 | export LANG="zh_CN.UTF-8" |
2 建立本地仓库
2.1 基本步骤
git init
(初始化)git add 单个文件名
或git add .
(工作区 —> 暂存区)git commit -m '注释内容'
(暂存区 —> 本地仓库)
2.2 版本控制
git status
(查看的修改的状态(暂存区、工作区))git-log
(查看日志)git log [option]
(查看日志)
options- all 显示所有分支
- pretty=oneline 将提交信息显示为一行
- abbrev-commit 使得输出的commitId更简短
- graph 以图的形式显示
git reset --hard commitID
(版本回退,commitID可使用git-log查看)git reflog
(查看已经删除的提交记录)根目录创建 .gitignore 文件 添加文件至忽略列表
1 | # no .a files |
2.3 分支
git branch 分支名
(创建分支)git checkout 分支名
(切换到分支)
git checkout -b 分支名
(创建并切换分支)git merge 分支名
(合并分支,前提是已经git checkout master)如果有冲突,手动解决冲突.
git branch -d 分支名
(删除分支)
git branch -D 分支名
(强制删除分支)
3 Git远程仓库
3.1 Gitee
生成SSH公钥
ssh-keygen -t rsa
- 不断回车
获取公钥
cat ~/.ssh/id_rsa.pub
- 配置公钥
验证是否配置成功
ssh -T git@gitee.com
添加远端仓库
git remote add origin git@gitee.com:......
查看远程仓库
git remote
推送到远程仓库
git push --set-upstream origin master
(—set-upstream 建立本地与远端的联系(首次))git push
(非首次)
查看本地分支与远程分支的关联关系
git branch -vv
克隆
git clone <仓库路径> [本地目录]
(仓库路径使用SSH地址)
抓取:将仓库里的更新都抓取到本地,但不合并
git fetch [remote name] [branch name]
拉取:将远端仓库的修改拉到本地并自动进行合并,等同于fetch+merge
git pull [remote name] [branch name]
- fetch和pull 如果不指定远端名称和分支名,则抓取所有并更新当前分支
在一段时间,A、B用户修改了同一个文件,且修改了同一行位置的代码,此时会发生合并冲突。A用户在本地修改代码后优先推送到远程仓库,此时B用户在本地修订代码,提交到本地仓库后,也需要推送到远程仓库,此时B用户晚于A用户,故需要先拉取远程仓库的提交,经过合并后才能推送到远端分支。
3.2 GitHub
配置ssh密钥的方法:https://www.cnblogs.com/Maurice-code/p/10531303.html
git clone 出现fatal: unable to access ‘https://github.com 的解决方法:将命令行的https改为git即可.
[参考连接]
[1] 黑马程序员Git教程
[2] Github文档
[3] 最好的git教程: Learn Git Branching