git常用的命令有:
Local: git clone [email protected]:Cbird-coder/datastructure.git # 在本地克隆一个github上仓库 git status # 获得当前项目的一个状况 git commit -a # 将修改文件(不包括新创建的文件)添加到索引,并提交到仓库 git add [file] # 添加文件到本地索引 git branch # 获得当前仓库中所有分支列表 git branch zx-branch # 新建本地一个名为zx-branch的分支,主分支名为master git branch -D branch_name # 删除名称为branch-name的本地分支 git checkout master # 切回主分支,切换到zx-branch只需要将master改成zx-branch git log # 查看提交日志,有许多附加参数 git log -p # 显示补丁 git log --stat # 日志统计:那些文件修改了,修改了多少行内容 git log --graph # 使日志看上去更漂亮 git diff master...branch # 比较两个分支之间差异 git remote rm origin # 删除origin变量地址 git branch [name] # 创建本地分支,注意新分支创建后不会自动切换为当前分支 git checkout [name] # 切换到name分支 git checkout -b [name] # 创建name分支并切换到name分支 git merge [name] # 将name分支与当前分支合并,name可以是远程分支,如origin/master Remote: git push origin [name] # 创建远程name分支 git push origin:zx-branch # 删除远程origin仓库地址的zx-branch分支 git branch -r # 获得当前仓库中所有分支列表,即查看远程分支还有一些其他的用法,如果原来的库发生了改变,本地的文件也需要发生同步,需要使用下面的命令:
1、取得远程发生改变的东西:
git fetch origin2、更新内容合并到本地分支
git merge origin/master
查看代码发生了那些改变,可以直接查看出那行发生了改变:
git blame file_name
还有一种同步方式:
git remote add upstream [email protected]/username/demo.git
然后再看看实际的一个操作,github的文件的删除以及文件夹的删除。
文件删除:
git rm hello.txt git commit -m "delete hello.txt" git push -u origin master删除文件夹:
本地不需要缓存可以这样操作:
rm -rf dir git add -A git commit -m 'remove dir' git push origin master
github每次push的时候需要输入密码的问题:
这个问题是每次关联本地仓库与远程仓库的时候使用了https协议没有使用ssh。
应该是:
git remote add origin [email protected]:Cbird-coder/demo.git而不是:
git remote add origin https://github.com/Cbird-coder/openwrt-related.git使用第二种就是每次输入用户名与密码,比较繁琐,前面一种是使用ssh的方式进行上传代码。