首先使用git add命令将计划的改动提交到缓存区,
然后使用git commit -m 代码提交信息"命令,将代码提交到HEAD,此时还没有提交到服务器,
执行git push origin master命令以将这些改动提交到服务器,可以把 master 换成你想要推送的任何分支。
下面我们来尝试添加文件
1.在仓库文件夹内我新建了个readme.txt
2.使用命令 git add readme.txt添加到缓存区里面去。
3.用命令 git commit -m 把文件提交到HEAD。
4.使用 git status 检查当前文件状态
Git提交修改
1.首先我们先修改一下 readme.txt
2. 我们使用 git status 查看结果:
上面的信息告诉我们,readme.txt被修改过了,但还没有准备提交的修改。
3. 我们可以使用 git diff +文件名 ,查看具体修改的内容。
4.使用git commit 提交修改的文件。
Git版本回退
1.使用git log 查询提交的历史记录
2.如果感觉显示的信息太多, 我们可以使用git log --pretty=oneline 命令
第一列一大串的字符为commit id ,是一个SHA1计算出来的一个非常大的数字,用十六进制表示,第二列为我们提交时填写的注释。
3.这时我们回退到上个版本可以使用git reset --hard HEAD^ 命令,回退上上个版本 git reset --hard HEAD^^ ,依次类推, 当我们回退100个版本时,可以写成git reset --hard HEAD~100
可以看到 HEAD目前指向的是 commit id为9d3830c的版本。
4.我们已经回退了一个版本,我们可以撤销这次的回退 当然可以,我们使用 git reset --hard +commit id 形式版本号(没必要写全,前几位就可以了,Git会自动去找)。
可以看到 HEAD又重新指向了 commit id为4332ee4的版本。
Git删除文件与恢复文件
1.我们可以使用 git rm+文件名 命令来删除文件
2.我们使用 git status 命令 产看目前仓库状态
可以看到deleted:显示了 我们刚刚删除的文件,我们再看看仓库的文件夹,发现readme.txt 也没有了。
3.这时我们用git checkout命令来恢复刚刚删除的文件。
git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。
添加远程仓库
添加SSH Keys
SSH keys 是为了防止任何人随意clone 或 push 代码而产生的.
SSH keys 有公匙和密匙,你在本地生成了密匙和公匙之后,把你的公匙告诉给服务器或者其他协作者,那么你就可以在他们的git版本库clone和push代码等操作.相对于一台服务器来说,一台协作者机器对应一个SSH keys.
1.首先使用 $ ssh-keygen -t rsa -C "你的邮箱"
1.这里是输入你的SSH keys 保存的位置,就是前面括号内的路径。
2.输入口令,可以直接回车。
3.再次输入口令,可以直接回车。
打开刚刚ssh keys 保存的文件夹:
id_rsa 存放的就是私钥 , id_rsa.pub存放的是公钥,我们可以cat 路径/id_rsa.pub查看公钥。 也可以用文件管理器打开文件。
2.在github或者git@osc 添加你的公钥
远程仓库
1.在git@osc新建仓库
2.创建完成后添加后使用命令:$ git remote add origin git@git.oschina.net:你的用户名/gitstudy.git
远程库的名字是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。
下一步,就可以把本地库的所有内容推送到远程库上:
3.使用$ git push -u origin master把本地库的所有内容推送到远程库上
小结