git使用

来源:互联网 发布:知美整形是正规医院吗? 编辑:程序博客网 时间:2024/06/05 09:20

所看教程来自廖雪峰老师的git教程

1.git add readme.txt
fatal: Not a git repository (or any of the parent directories): .git

解决方案:git init


2.git add readme.txt
fatal: 路径规则 'readme.txt' 未匹配任何文件

解决方案:仓库目录下新建一个名叫readme.txt的文件

再执行add语句


3.

git commit -m "wrote a readme file"错误:*** Please tell me who you are.Run  git config --global user.email "you@example.com"  git config --global user.name "Your Name"to set your account's default identity.Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address


解决方案:按提示提交email和username,再执行commit命令

教程摘要与总结

安装git

sudo apt-get install git

1.文件一定要放到git仓库目录下(子目录也行),因为这是一个Git仓库,放到其他地方Git再厉害也找不到这个文件

2简单解释一下git commit命令,-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。

3.文件更新完之后两步:1.add  2.commit

        否则会出现类似 尚未暂存以备提交的变更:
                                     修改:         readme.txt

                                     未跟踪的文件:
                                     readme.txt~

                                     修改尚未加入提交


4.git status命令可以让我们时刻掌握仓库当前的状态

5.修改文件后,在提交前可以git diff查看仓库里与修改后的difference

6.git log命令显示从最近到最远的提交日志

7.git reset --hard HEAD^ 回退到上一版本。

                               上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

8. git reset --hardxxxx

最新的那个版本append GPL已经看不到了!想再回去已经回不去了,肿么办?

要上面的命令行窗口还没有被关掉,你就可以顺着往上找到那个未来那个版本commit idxxxx...,于是就可以指定回到未来的某个版本:

 git reset --hard xxxx

版本号没必要写全,前几位就可以了,Git会自动去找。当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。

9.git reflog 用来记录你的每一次命令

想恢复到新版本怎么办?找不到新版本的commit id怎么办?Git提供了一个命令git reflog用来记录你的每一次命令

10.

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退


11.添加一个新文件test.txt到Git并且提交,你通常直接在文件管理器中把没用的文件删了,或者用rm命令删了:

$ rm test.txt

这个时候,Git知道你删除了文件,因此,工作区和版本库就不一致了,git status命令会立刻告诉你哪些文件被删除了:

现在你有两个选择,一是确实要从版本库中删除该文件,那就用命令git rm删掉,并且git commit

git rm test.txtgit commit -m "remove test.txt"

现在,文件就从版本库中被删除了。


另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本

git checkout -- test.txt命令git rm用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容




0 0