一开始我对git还是比较抵触,学习成本较高,因为不懂所以不知其便利。但终究还是没有忍住git对我的诱惑,便尝试了起来。我是按照廖雪峰的git课程进行学习的。目前我也只能算是入门,还远没有达到精通的地步。现将git的学习笔记进行一下整理。
- git初始配置
ssh -T git@github.comgit remote -vgit config --global user.name "beichen1994"git config --global user.email "1768229565@qq.com"git config --listssh-keygen
- 创建git仓库
mkdir learngitcd learngitgit init
- 将修改添加到暂存区,提交到Master分支
编写 file1.txt file2.txt file3.txtgit add file1.txtgit add file2.txt file3.txtgit commit -m "update"
继续修改 file1.txtgit status 查看仓库状态 git diff file1.txt 查看修改内容git add file1.txtgit commit -m "update"git status 查看仓库状态
- 版本回退
继续修改file1.txtgit add file1.txtgit commit -m "udpate"git log查看提交过程,目前file1.txt一共进行了三次提交,也就是有三个版本git reset --hard head^ 将file1.txt更改为第二次提交,顺便将工作区的文件进行了更新git log查看提交过程,目前只显示两次提交git reflog 查看所有提交历史,便于使用版本号进行resetgit reset --hard 1094 将file1.txt更改为1094号提交,顺便将工作区的文件进行了更新
- 撤销修改
git reset HEAD readme.txt如果file1.txt已经添加到暂存区,现在撤销暂存区的修改
git checkout -- file1.txt如果文件修改出问题,用版本库,即暂存区或者分支上的版本替换工作区的版本(撤销file1.txt在工作区的修改)
- 文件删除
先将工作区的file2.txt删除git rm file2.txt 将版本库中的文件删除git commit -m "udpate"
git checkout -- file2.txt如果文件删错了,用版本库中的文件替换工作区
关联远程仓库
git remote add origin git@github.com:beichen1994/Repo.gitgit push -u origin mastergit clone git@github.com:beichen1994/gitskills.git克隆到本地库
使用git提交的时候出现The file will have its original line endings in your working directory.错误
1 git rm -r -f --cached ./ (删除缓存) 2 git add . (添加该目录下所有文件) 3 git push -u origin master (这时候提交就没问题了)
- 分支管理
git branch dev创建dev分支git checkout dev然后切换到dev分支git branch查看所有分支修改file1.txt git add file1.txtgit commit -m "update"git checkout master切换回master分支,发现file1.txt中的修改不见了git merge dev合并dev分支到当前分支 (master)git branch -d dev删除dev分支
- 解决冲突
git branch feature1git checkout feature1继续修改file1.txtgit add file1.txtgit commit -m "update"在feature1分支上提交修改git checkout master切换到master分支继续修改file1.txtgit add file1.txtgit commit -m "update"在master分支上提交git merge feature1两个分支上的file1.txt出现冲突将master分支上的file1.txt文件修改一下git add file1.txtgit commit -m "update"在master分支上继续提交git branch -d feature1删除feature1分支
整个过程如下所示
问题
电脑登录不了github