Git学习
文章目录
1.git结构
2.常用命令
命令名称 | 作用 |
---|---|
git config --global user.name 用户名 | 设置用户签名 |
git config --global user.email 邮箱 | 设置用户签名 |
git init | 初始化本地库 |
git status | 查看本地库状态 |
git add 文件名 | 添加到暂存区 |
git commit -m “日志信息” 文件名 | 提交到本地库 |
git reflog | 查看历史记录 |
git reset --hard 版本号 | 版本穿梭 |
初始化本地库
git init
查看状态
$ git status
On branch master
No commits yet
nothing to commit (create/copy files and use "git add" to track)
将工作区的文件添加到暂存区
git add 文件名
删除工作区中的文件
提交本地库
git commit -m “日志信息” 文件名
$ git commit -m "first commit" hello.txt
warning: LF will be replaced by CRLF in hello.txt.
The file will have its original line endings in your working directory
[master (root-commit) 590b6f4] first commit
1 file changed, 18 insertions(+)
create mode 100644 hello.txt
我们可以再次追踪文件 git add hello.txt
然后提交到本地库中 git commit -m “第二次提交” hello.txt
以此类推
3.版本穿梭
git reset --hard 版本号
比如上面加了33333333,修改了三次,我们回退到2
复制2的版本号
输入:$ git reset --hard 7dda324
输出:HEAD is now at 7dda324 second commit
这样就回到了2版本
linux复制粘贴快捷键:复制:ctrl+ins,粘贴:shift + ins
或者说:复制 双击左键 粘贴 单击鼠标中键
版本的穿梭用的就是指针的移动
4.git分支结构
master主线一直是在使用的,新增的分支开发时候不会影响 master
分支的好处:
同时并行推进多个功能开发,提高开发效率。
各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可
命令名称 | 作用 |
---|---|
git branch 分支名 | 创建分支 |
git branch -v | 查看分支 |
git checkout 分支名 | 切换分支 |
git merge 分支名 | 把指定的分支合并到当前分支上 |
查看
$ git branch -v
创建
如图就切换到了另外的分支
若在此分支修改文件,查看git reflog文件,指针指向了hot-fix
但是在hot-fix上修改的文件,并不会影响到master分支
只有将两个分支合并才会受到影响
分支合并
git merge +分支名
此时hot-fix的文件修改合并到matser分支中
冲突合并:新版本没有了
5.Git 团队协作机制
尚硅谷git视频教程很好,上手贼快
6.GitHub 操作
命令名称 | 作用 |
---|---|
git remote -v | 查看当前所有远程地址别名 |
git remote add 别名 远程地址 | 起别名 |
git push 别名 分支 | 推送本地分支上的内容到远程仓库 |
git clone 远程地址 | 将远程仓库的内容克隆到本地 |
git pull 远程库地址别名 远程分支名 | 将远程仓库对于分支最新内容拉下来后与 当前本地分支直接合并 |
1.创建别名,git remote add 别名 原来网址名
git remote -v可以查看别名
推送本地分支到远程仓库
git push 别名 分支
对于提交所有文件可以使用
git add .
git commit -m “描述” -a
2.更新本地库
git pull 远程库/别名 分支或者全部(master)
git pull git-demo master git-demo是远程库的别名
3.克隆仓库 git clone 代码库地址
clone==pull+init+remote 拉代码+初始化本地库+别名
4。我们可以看到远程仓库中还有一个 SSH 的地址,因此我们也可以使用 SSH 进行访问
ssh免密登录
idea集成git
: push 是将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致,
push 的操作是会被拒绝的。也就是说, 要想 push 成功,一定要保证本地库的版本要比远程
库的版本高! 因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地
代码的区别!如果本地的代码版本已经落后,切记要先 pull 拉取一下远程库的代码,将本地
代码更新到最新以后,然后再修改,提交,推送!
idea git教程在pdf笔记中
如果本地库代码跟远程库代码版本不一致,
push 的操作是会被拒绝的。也就是说, 要想 push 成功,一定要保证本地库的版本要比远程
库的版本高! 因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地
代码的区别!如果本地的代码版本已经落后,切记要先 pull 拉取一下远程库的代码,将本地
代码更新到最新以后,然后再修改,提交,推送!
idea git教程在pdf笔记中
pdf 链接—尚硅谷的笔记—
https://www.aliyundrive.com/s/1f8Npo1u2EK