Git 协作命令
Git Commands for Collaboration
我正在学习 Git 的基础知识,但我无法掌握一个概念。我浏览了 YouTube、Github、Attlasian、Gitguys 和 Git-SCM 上的主要教程。不幸的是,这些教程是由不是教师的程序员编写的。
事情是这样的:
我想为现有的回购(单元测试)做贡献。
但是我只能在我也必须创建的单独分支中这样做。
我需要什么 Git 命令来下载这个项目、添加我的代码、创建一个单独的分支、用我的代码上传项目?
PS。为了您的方便 -
- 新分支的名称"feature/unit-tests-from-z"
- link 到回购“https://link.git”
- 当前分支名称"mainBranch"
master
应该是主分支,所以步骤如下:
1- 克隆存储库:
git clone git_repo_url
2- 确保它与主人一起更新:
git pull origin master
3- 基于master新建分支:
git checkout -b your_new_branch
4- 进行更改并提交(请注意这不是最佳选择,因为您不会检查更改 - 它会提交所有内容 - 关于如何使用 tutorials =18=]):
git add --all
git commit -am "describe your changes"
5- 推送您的更改:
git push origin your_new_branch
6- 转到 github/gitlab/gitbucket/... 并创建合并请求(或拉取请求)
更新:
如果您想更改代码,您需要更新的代码吗?
通常主分支称为master
(生产中的代码)。
您将从 master
(或从 mainBranch
,如果是这种情况)创建一个新分支,因此您将在具有不同名称的分支中拥有代码的更新版本(your_new_branch
在我的例子中)。
通过这种方式,您可以更改代码并将您的更改提交到这个新分支。所有命令都写在终端中。当你完成你的工作时,你将拥有不同于mainBranch
的your_new_branch
。
然后您团队中的某个人可以下载您的分支并合并更改。
我已经在下面解释了....我希望清楚...
git clone git_repo_url #clone the code
git co mainBranch #go to branch that have the code you need to change
git pull origin mainBranch #make sure the local code is update with the remote branch
git checkout -b your_new_branch #make a new branch based on the mainBranch
#at this point the code is identical in both branches( mainBranch and your_new_branch)
git add --all #add all the files you have changed to be commited
git commit -am "message" #write your commit message to explain what you have changed
git push origin your_new_branch #send your branch to the repo
这样,您团队中的某个人将能够下载您的分支并将其合并到 mainBranch
:
git co your_new_branch #go to your branch
git pull origin your_new_branch #get the code
git diff mainBranch #view the difference between branches
git co mainBranch #go back to the mainBranch
git merge your_new_branch #merge your changes into the mainBranch
正在下载项目
$ git clone https://link.git <folder-name>
$ git checkout -b feature/unit-tests-from-z
这些命令会将 repo 下载到文件夹名称中,或者如果您没有提供,则将其下载到名为 link
的文件夹中。该路径相对于您当前的工作目录。然后你将签出一个 new 分支(这就是 -b
标志所表示的),也将在该分支上结束。
checkout 命令真的很强大。这是您用来在历史提交之间或到新分支之间移动的方式。使用 git checkout [tag/hash/branch]
.
可以查看历史上任何时候提交的任何更改
然后您可以使用以下方法验证您是否在新分支上:
$ git branch
将您的更改添加到分支
完成更改后,使用:
$ git add .
.
表示您要添加相对于当前工作目录的所有已更改文件。如果您已删除文件,则还可以使用上述命令使用 --ignore-removal
标志。
如果您想更好地控制添加的内容,请改用以下内容:
$ git add -p
但是,它只适用于更改的文件。使用 $ git add /path/to/file
.
添加新文件
使用 git 时,不要仅以正常方式删除文件。使用:
$ git rm path/to/file
添加所有文件后,使用:
$ git commit -m "A brief description about the changes you made."
如果你敢使用默认的命令行文本编辑器,最好使用:
$ git commit
上传您的更改
如何完成取决于文件的位置。如果您对您的分支所在的仓库有推送权限,那么您首先需要添加该仓库(https://link.git 地址将不起作用,因为它是只读的)。
您使用:
$ git remote add repo-name address-to-repo
确保您的项目中添加了正确的远程存储库后,使用:
$ git push repo-name feature/unit-tests-from-z
使用此命令会将您的新分支推送到相关存储库。
我正在学习 Git 的基础知识,但我无法掌握一个概念。我浏览了 YouTube、Github、Attlasian、Gitguys 和 Git-SCM 上的主要教程。不幸的是,这些教程是由不是教师的程序员编写的。
事情是这样的:
我想为现有的回购(单元测试)做贡献。 但是我只能在我也必须创建的单独分支中这样做。
我需要什么 Git 命令来下载这个项目、添加我的代码、创建一个单独的分支、用我的代码上传项目?
PS。为了您的方便 -
- 新分支的名称"feature/unit-tests-from-z"
- link 到回购“https://link.git”
- 当前分支名称"mainBranch"
master
应该是主分支,所以步骤如下:
1- 克隆存储库:
git clone git_repo_url
2- 确保它与主人一起更新:
git pull origin master
3- 基于master新建分支:
git checkout -b your_new_branch
4- 进行更改并提交(请注意这不是最佳选择,因为您不会检查更改 - 它会提交所有内容 - 关于如何使用 tutorials =18=]):
git add --all
git commit -am "describe your changes"
5- 推送您的更改:
git push origin your_new_branch
6- 转到 github/gitlab/gitbucket/... 并创建合并请求(或拉取请求)
更新:
如果您想更改代码,您需要更新的代码吗?
通常主分支称为master
(生产中的代码)。
您将从 master
(或从 mainBranch
,如果是这种情况)创建一个新分支,因此您将在具有不同名称的分支中拥有代码的更新版本(your_new_branch
在我的例子中)。
通过这种方式,您可以更改代码并将您的更改提交到这个新分支。所有命令都写在终端中。当你完成你的工作时,你将拥有不同于mainBranch
的your_new_branch
。
然后您团队中的某个人可以下载您的分支并合并更改。
我已经在下面解释了....我希望清楚...
git clone git_repo_url #clone the code
git co mainBranch #go to branch that have the code you need to change
git pull origin mainBranch #make sure the local code is update with the remote branch
git checkout -b your_new_branch #make a new branch based on the mainBranch
#at this point the code is identical in both branches( mainBranch and your_new_branch)
git add --all #add all the files you have changed to be commited
git commit -am "message" #write your commit message to explain what you have changed
git push origin your_new_branch #send your branch to the repo
这样,您团队中的某个人将能够下载您的分支并将其合并到 mainBranch
:
git co your_new_branch #go to your branch
git pull origin your_new_branch #get the code
git diff mainBranch #view the difference between branches
git co mainBranch #go back to the mainBranch
git merge your_new_branch #merge your changes into the mainBranch
正在下载项目
$ git clone https://link.git <folder-name>
$ git checkout -b feature/unit-tests-from-z
这些命令会将 repo 下载到文件夹名称中,或者如果您没有提供,则将其下载到名为 link
的文件夹中。该路径相对于您当前的工作目录。然后你将签出一个 new 分支(这就是 -b
标志所表示的),也将在该分支上结束。
checkout 命令真的很强大。这是您用来在历史提交之间或到新分支之间移动的方式。使用 git checkout [tag/hash/branch]
.
然后您可以使用以下方法验证您是否在新分支上:
$ git branch
将您的更改添加到分支
完成更改后,使用:
$ git add .
.
表示您要添加相对于当前工作目录的所有已更改文件。如果您已删除文件,则还可以使用上述命令使用 --ignore-removal
标志。
如果您想更好地控制添加的内容,请改用以下内容:
$ git add -p
但是,它只适用于更改的文件。使用 $ git add /path/to/file
.
使用 git 时,不要仅以正常方式删除文件。使用:
$ git rm path/to/file
添加所有文件后,使用:
$ git commit -m "A brief description about the changes you made."
如果你敢使用默认的命令行文本编辑器,最好使用:
$ git commit
上传您的更改
如何完成取决于文件的位置。如果您对您的分支所在的仓库有推送权限,那么您首先需要添加该仓库(https://link.git 地址将不起作用,因为它是只读的)。
您使用:
$ git remote add repo-name address-to-repo
确保您的项目中添加了正确的远程存储库后,使用:
$ git push repo-name feature/unit-tests-from-z
使用此命令会将您的新分支推送到相关存储库。