一 .git和github
https://www.cnblogs.com/wupeiqi/p/7295372.html
Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
[1] Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件
https://www.cnblogs.com/alex3714/articles/5930846.html
https://www.cnblogs.com/haiyan123/p/7989167.html
1. 本地仓库操作
1 01 配置用户名 git config --global user.name "自己的github的用户名" git config --global user.name "Supremelover88" 02 配置邮箱名git config --global user.email "自己的github邮箱" git config --global user.email "[email protected]" 2. 创建版本库 01 . 在合适的地方创建一个空目录 例如: 桌面 上创建一个文件夹 supreme 02 . cd进入该目录 (注意必须在git环境下用 cd 进如桌面上的supreme文件夹下) 03 . 使用 在git init 命令把这个目录变成git可以管理的仓库 04 . 注意千万不要手动修改 .git 目录文件 05 pwd 命令是显示 当前工作的文件路径 06 . 在supreme文件(仓库)创建一个root.txt文件 在里面添加内容 例如 : my name is zhangsan 把文件添加到仓库中 git add 命令 例如 : git add root.txt 把文件提交到仓库中 git commit -m "注释信息" 例如 : git commit -m "这是管理员文件root"
2. 时光穿梭机
01 . git status 命令 用于显示工作目录和暂存区的状态。 查看仓库状态 02 . git diff 命令 查看修改内容 03 . git log 命令 查看可以显示从最近到最远的提交日志 (意思就是查看你干了啥) git log --pretty=oneline 命令 与git log 一样只是显示的方式不一样 04 版本回退 : 01 回退到上一个版本 git reset --hard HEAD^ 02 回退到上上一个版本 git reset --hard HEAD^^ 03 回退到上100一个版本 git reset --hard HEAD~100 04 回退到上上一个版本 git reset --hard 具体版本号 lover@lover MINGW64 ~/Desktop/supreme (master) $ git reset --hard HEAD 42601cb874ad4c1f30de891ee31de6cff78ceb88 fatal: Cannot do hard reset with paths. 05 git reflog 命令 查看历史命令 06 git checkout --fileNmae 清空工作区修改,暂存区保持不变 git checkout -- root.txt 没有 add 和 commit 如果filename 文件自修改后还没有放到暂存区(没有执行 add 和 commit ) 现在 撤销修改就会回到和版本库一模一样的状态 如果filename文件已经添加到暂存区后(执行add 和 commit ) 又做了修改现在 撤销修改就回到添加暂存区的状态 总之 就是让这个filename文件回到最后一次 git commit 或者 git add时的状态
3. 把代码放在GitHub仓库上
账号 [email protected] 邮箱 Supremelover88 用户名 Supremelover6969 密码 01 创建SSH Key 02 在git环境中也就是黑屏终端输入 ssh-keygen -t rsa -C "自己的github邮箱" 输入完一直回车 ssh-keygen -t rsa -C "[email protected]" ssh-keygen -t rsa -C "[email protected]" lover@lover MINGW64 ~/Desktop/supreme (master) $ ssh-keygen -t rsa -C "[email protected]" Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/lover/.ssh/id_rsa): /c/Users/lover/.ssh/id_rsa already exists. Overwrite (y/n)? lover@lover MINGW64 ~/Desktop/supreme (master) $ cd /c/Users/lover/.ssh lover@lover MINGW64 ~/.ssh $ pwd /c/Users/lover/.ssh 03 记录.shh目录位置 04 输入Github注册密码(注意 :密码输入 黑屏终端上不会显示) 05 .ssh id_rsa 私钥 id_rsa.pub 公钥 06 测试秘钥是否通过 ssh -T [email protected] 黑屏终端输入 07 在github官网上创建一个远程仓库 Use HTTPS hithub 地址[email protected]:SupremeLover666/supreme.git 08 本地仓库 关联远程仓库(在github官网上) git remote add origin "远程仓库地址" 1、先输入$ git remote rm origin 2、再输入$ git remote add origin [email protected]:djqiang/gitdemo.git 就不会报错了! git remote add origin [email protected]:Supremelover88/dog.git 09 删除关联 git remote rm origin 10 拉远程仓库到本地库 注意: 需要把远程仓库内容拉到本地 否则会报错 git pull origin master git pull origin master --allow-unrelated-histories :q 11 推送本地库到远程仓库 git push origin master 注意: 需要把远程仓库内容拉到本地 否则会报错 忽略特殊文件 .gitignore 1 从零开发 先有远程库克隆 git clone "远程库地址" git clone [email protected]:Supremelover88/Dream.git 把文件添加到仓库中 git add 命令 把文件提交到仓库中 git commit -m "注释信息" 推送本地库到远程仓库 git push origin master
01 在git黑屏终端 输入 ssh-keygen -t rsa -C "自己GitHub的注册邮箱" ssh-keygen -t rsa -C "[email protected]" 02 输入Github注册密码(注意密文输入 黑屏终端不会显示密码) 03 记录 .ssh id_ rsa 私钥 表示谁可以传代码 id_rsa.pub 公钥 cat id_rsa.pub 执行生成公钥 如下 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC5Z/HcSN22Is5QpsxJCyCzlLkBRj R2e4PgaVFno8QgokcgYuOlx4WSX11MsIeusnOhtIsyWHKlc5/ETU4ZRXCcBKWCqjXgqLUL aQt6d2b41PaRXICRIfgkg8JNi3iLYLLcowmrDMt4opx344+i0WrZGnZY3b9yUWAOc45lTJa tcLFoNTNSNwuEcpfT7NK53jocKzDK07ck+VV6qMt3vj1Okd+3mVFnXpRjy0Q9iOQM7xwO/P2 uUDTu8V8mPLClAmOsb11B+NyrINh3TQGWHEXgebLM0mXujgcoPADJGdEwtwbWgJMmV1NoEh6i rMNcTJGu8iXp0LYku8sMU1DlafMX 1837855846@qq.com cat id_rsa 执行生成私钥 如下 MIIEowIBAAKCAQEAuWfx3EjdtiLOUKbMSQsgs5S5AUY0dnuD4GlRZ6PEIKJHIGLj pceFkl9dTLCHrrJzobSLMlhypXOfxE1OGUVwnASlgqo14Ki1C2kLendm+NT2kVyA kSH4JIPCTYt4i2Cy3KMJqwzLeKKcd+OPotFq2Rp2WN2/clFgDnOOZUyWrXCxaDUz UjcLhHKX0+zSud46HCswytO3JPlVeqjLd749TpHft5lRZ16UY8tEPYjkDO8cDvz9 rlA07vFfJjywpQJjrG9dQfjcqyDYd00BlhxF4HmyzNJl7o4HKDwAyRnRMLcG1oCT JldTaBIeoqzDXEyRrvIl6dC2JLvLDFNQ5WnzFwIDAQABAoIBAAJLWf/a2vuFBL6U wdRpkdcHER8F6mJI9wHQ69P3f9bTi0PIVX7YsDt2eKYZTSSJSssGe+58j7aibqi0 ODIx3MnheNbcGlyUWeExRJYYYirUH9T+qwygufxhsQbaofw/jxcR4W2/c8kjYgJN y5o9MzBKlopU/CiC/0hOf8WbJAYzaGd/1mnYFCn9M1moT24eiMLpD8XIbBL06501 2BHeSEMKQMKfUL58Sh6/b4WNA0ybDTpjaHqBCs7uOcULinKwIGtgr6kLu8LFwbtj XLUFAOssjYRmoFQT8FyIvFAedlpEF1eGb1U2fz9ZBkdxtiBkJHmaHR8XJV6kJ/jm kPaTuQECgYEA6A8aeZcXajSltCc3JxyOIIN0kHpCb6QJv2Uw7YZD1nF1gIieeUdE KKxJsyVB605emcq23OYbkIthAQMWTgmIcoEd0wumJJABx1DzVW0Fgk1G73v8Ih3l khxT8U3Yag9Qchzp+gArUjzDg0ezn1J1mvqiOb+QlFXZ5Iav3BEA0IECgYEAzIix UpxZZK8DtQB3dS95fTRjtTKEsrVWT6aG7iH6hL/oWdtOYN5vdSzBj4VTpTcJJLFK lt3SX5VtbJJ604qQorn2ni7wS1v73pk4f4gxnVL4dqAFswVJ77BVpITL1B5rcIuS ihvPDikC92FKFc0l67ymL1YK9LxoflYem0uDd5cCgYEA0tleSdpB2Ssq4Gy9TRlB /kLS969OjBe1D6WG9lqHauI+TGJV84YQZRBeCpswsPfNNtmcm0utAgHSStQeQRui UcAFdEviUthR9WMVJapgVguXB2RVLD6T59U7ZEZB++QcSQMCiTf8JMW3M6JDj+Ch oQZXvjbTzCPRTjYetcrxPYECgYBilGN64JaJW30a6R2qYnZYrT59X9rrU1FFVIrm DYR0JRa08GmHcM4hmK+2H9mf4LXMdJLxwfoaTagO007V1Iw/kgfWV+NDPxNXR1we w6K+I/ZTHm+AyETJfKDaiZLAKuU3ul2nqR2TwpqGZuLRPS5Qv30NhZgEOybV9WYN DUlRAwKBgB4kL43ZUNzyRFS6z9Ef1/nmqsVbArJn8UiqLTGPigoWQNcze3rcQ3Vi /sHtVzhIghe8yb6ct+F8vYD1dhBtAcA4+O/fZSBbVnsL7DgcKo9zaSuNo9zwCohl /I8uKygDSyU8pLY8i4k3hHp5gOr7W/+N6u8RXjiwOZy/e+U4GBtp 04 执行 ssh -T [email protected] 检测钥匙是否通过
4. 分支操作
先有远程库克隆 git clone "远程库地址" git clone [email protected]:Supremelover88/lover.git 把文件添加到仓库中 git add 命令 把文件提交到仓库中 git commit -m "注释信息" 推送本地库到远程仓库 git push origin master 2 忽略特殊文件 .gitignore 创建文件 $ touch "文件名" touch .ccc 3 创建github分支 创建分支 git branch 分支名 切换分支 git checkout 分支名 查看在那个分支上 git branch 创建与切换同时进行 git checkout -b 分支名 合并分支 git merge 分支名 git merge lalal 删除分支 git branch -d 分支名 删除远程分支 git push origin : 分支名 git push origin --delete 分支名 创建远程分支 git push --set-upstream origin 分支名 下拉分支 git pull origin 分支名 推送分支 git push origin 分支名 查看分支合并图 git log --graph
5 .图文
二 .git和github(多人协同开发)
1. 合作者模式
2. 创建组织模式