git 笔记

git命令行游戏:https://learngitbranching.js.org/?locale=zh_CN
1.在windows中安装Git
1.命令行工具: git for windows(重点)
tip:
点击安装包,然后傻瓜模式的安装就可以成功
2. 可视化工具:TortoiseGit
3.idea插件
4.github网站
 
2.配置Git签名
1.第一步
选中你要作为Git工程存放的目录,然后单击鼠标右键选择 git bash即可
tip:
 
2 git 是分布式版本控制工具,所以我们需要填写用户名和邮箱作为一个标志
在安装目录下,找到gitconfig文件,这个文件里面可以看到一个global 属性,所有的git
项目都会共用这个属性
 
3 命令行操作
git config --global user.name "用户名"
git config --global user.email "用户邮箱"
 
3.创建版本库
1.第一步 选中一个git工程的目录
2.第二步 输入命令初始化版本库
git init
 
3.git命令行操作
3.1 查看文件状态
git status
 
3.2 将文件/目录添加到临时暂存区
git add 文件名/目录名
tip:
以上通过 git add命令的文件会提交到暂存区,但这里的文件其实并没有真正的提交,使用下一个
命令才是把它提交到一个统一的版本文件
 
3.3 提交文件
git commit
git commit -m "提交提示信息"
tip:
每当有文件被修改/添加/删除的时候,都需要重新git add,然后再git commit
 
3.4 查看日志
git log
git log --pretty=one line
 
3.5 回退历史
创建一个文件:a.txt
aaaaaaaaaaaa
bbbbbbbbbbbb
ccccccccccccc
修改一个文件:a.txt
aaaaaaaaaaaa
bbbbbbbbbbbb
ccccccccccccc
dddddddddddd
tip:
添加到暂存区然后提交
 
3.6 回退到上一次提交
git reset --hard HEAD^1
tip:
HEAD是一个指针,永远指向最新版本,^1表示让HEAD指针指向上一个版本
--hard:硬 这种回顾不但将版本回顾,还会将指定的数据抹除,不会保留任何你修改的记录
--soft:软 回退版本,也会保留改动的记录,会自动帮你 git add.
--mix:折中 回退版本,也会保留所有改动记录,但是并不会帮你 git add.
git reset: 修改HEAD的位置
这种方法可以恢复到之前某个提交的版本,但是恢复之后,当前版本之后的版本将不复存在
 
3.7 回退到多个版本
git reset --hard HEAD~2 回退到2个版本之前的版本
 
3.8 版本穿越
git reflog 查看历史记录的版本号
git reset --hard 版本号
 
3.9 还原文件
git checkout 文件名
 
3.10 删除文件
1-先删除文件 2- git add 3-git commit
 
4. 工作区、暂存区、本地库
1,概念
工作区(working Directory):电脑的本地磁盘目录
本地库(Repostory):工作区有一个隐藏目录.git ,它就是git的本地版本库
暂存区(stage):一般存储在git目录下的index文件,所以我们把暂存区有时候也叫做索引
 
5.分支
5.1 查看分支
git branch -v
5.2 创建分支
git branch 分支名称
5.3 切换分支
git checkout 分支名
5.4 合并分支 (将其他分支合并到主分支:master)
1,切换到主分支
git checkout master
2.合并
git merge 分支名
6.冲突
6.1 什么是冲突
冲突一般是指同一个文件同一位置的代码,在两种版本的仓库合并时,版本的管理软件无法判断 到底应该保留哪一个版本,因此会提示该文件发成冲突,冲突一般都需要程序员手动解决
6.2 在分支合并的时候解决冲突
1.先在master分支上创建一个 xiaozhu.txt
2.再在common分支上创建一个 xiaozhu.txt
3.分别提交
4.最后合并
5.查看冲突
git diff
6.解决冲突,切换到那个目录,然后查看文件
7.再重新 add 和 commit 即可解决冲突
 
github
推送代码到Git
git remote add <远程代号> <远程地址>
<远程代号>:指远程链接的代号,一般直接用origin做代号,也可以自定义
<远程地址>:指远程链接的url
 
推送到远程库
git push <远程代号> <分支名>
 
下载github上的库
从GitHub上克隆
git clone <远程地址> <项目的目录名>
<项目的目录名>:指为克隆的项目在本地新建的一个目录名,可以不填,默认就是使用Github仓库名
 
再次提交代码
git push origin master
 
从github更新醒目
git pull <远程代码> <远程分支>
git pull origin master
 
合作冲突
什么是协作冲突
在上传或者同步代码时,由于你和他人都修改了同一文件的同一位置的代码,版本管理工具无法判断究竟谁为准,这就会报告冲突,需要程序员手动解决
 
解决方式
1,修改合并 2,git add 3, git commit
 
 git删除命令
rm test.txt   删除工作区的文件
git rm test.txtx   删除工作区文件,并将这次删除放入暂存区,需要注意的是:要删除的文件是是没有修改过的,需要和版本库的文件保持相同
git rm -f test.txt  删除工作区和暂存区文件,并且将这次删除放入暂存区。注意: 要删除的文件已经修改过,就是说和当前版本库文件的内容不同
 git rm --cached   删除暂存区文件,但保留工作区的文件,并且将这次删除放入暂存区
 
git diff  查看分支代码改动
 
 git log --pretty=oneline   查看简介log版本
 
git cherry-pick <commit id>  当执行完 cherry-pick 以后,将会生成一个新的提交;这个新的提交的哈希值和原来的不同,但标识名一样;
 
git rebase  合并多个commit 为一个完整commit
 
 
 
 
 
 

处在这个俗世,也得让自己变得更好吧
原文地址:https://www.cnblogs.com/butaileng7/p/14378066.html