In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-03-01 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >
Share
Shulou(Shulou.com)06/01 Report--
Gerrit is a set of code review environment, installation premise requires the installation of java environment, mysql environment, nginx environment. Here I use the lnmp button to install it for simplicity, and the rest is java.
Lnmp will not be installed. You can refer to using shell to build a lnmp environment with one click.
The files you need to prepare before installation are as follows: (http://pan.baidu.com/s/1jIwJSz0, extract password: fue3)
Mysql-connector-java-5.1.21.jar
Bcpkix-jdk15on-1.52.jar
Gerrit-2.11.3.war
# # download address of other versions of gerrit #
If you choose a different version, you can refer to the link: http://www.cnblogs.com/kevingrace/p/5624122.html#commentform
The preparatory work is complete, and the installation begins next.
Java is installed first.
Delete the java that comes with the system first
[root@wulaoer ~] # yum remove java [root@wulaoer ~] # lsanaconda-ks.cfg install.log.syslog lnmp1.3-full lnmp-install.loginstall.log jdk-8u101-linux-x64.tar.gz lnmp1.3-full.tar.gz [root@wulaoer] # mkdir / usr/local/jvm [root@wulaoer ~] # tar-zxf jdk-8u101-linux-x64.tar.gz-C / usr/local/jvm/
I've downloaded it, uploaded it directly, and set the java environment variable.
[root@wulaoer] # vi / etc/profile. Omit part. Export JAVA_HOME=/usr/local/jvm/jdk1.8.0_101export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATHexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ path [root @ wulaoer ~] # source / etc/profile # effective java environment
Check the java and javac environment
[root@wulaoer ~] # java usage: java [- options] class [args...] (execution class) or java [- options]-jar jarfile [args...] (execute jar file) where options include:-D32 using 32-bit data model (if available)-D64 using 64-bit data model (if available)-server selecting "server" VM. Omit part; omit part
Javac environment
[root@wulaoer ~] # javac usage: javac, possible options include:-g generates all debugging information-g:none generates no debugging information-g: {lines,vars Source} generates only some debugging information-nowarn does not generate any warnings-verbose outputs messages about what the compiler is doing-deprecation output uses the source location of the obsolete API. The Ministry of ellipsis..
Java environment, where the installation is complete.
Second, create a gerrit database and customize the encoding to utf-8
[root@wulaoer] # mysql-uroot-pEnter password: Welcome to the MySQL monitor. Commands end with; or\ g.Your MySQL connection id is 1Server version: 5.5.48-log Source distributionCopyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or'\ h' for help. Type'\ c'to clear the current input statement.mysql > create database gerritdb CHARACTER SET utf8 COLLATE utf8_general_ci;Query OK, 1 row affected (0.07 sec) mysql > grant all on gerritdb.* to 'gerrituser'@'localhost' identified by' gerritpass';Query OK, 0 rows affected (0.06 sec)
Third, create a gerrit account and put the installation files in the gerrit home directory.
Create a gerrit user
[root@wulaoer] # useradd gerrit [root@wulaoer ~] # su-gerrit [gerrit@wulaoer ~] $
Copy the files to the gerrit home directory
The total amount of [root@wulaoer] # ll is 713868. 1 root root 1431 June 1 19:17 anaconda-ks.cfg-rwxr-xr-x. 1 root root 622849 July 14 11:22 bcpkix-jdk15on-1.52.jar-rwxr-xr-x. 1 root root 45136951 July 8 19:34 gerrit-2.11.3.war-rw-r--r--. 1 root root 27338 June 1 19:16 install.log-rw-r--r--. 1 root root 7572 June 1 19:15 install.log.syslog-rw-r--r--. 1 root root 181352138 July 20 11:50 jdk-8u101-linux-x64.tar.gz-rwxr-xr-x. 1 root root 827942 July 14 11:22 mysql-connector-java-5.1.21.jar
Copy the files to the gerrit directory and give them permission
[root@wulaoer ~] # cp gerrit-2.11.3.war / home/gerrit/ [root@wulaoer ~] # mkdir-p / home/gerrit/gerrit_site/ lib [root @ wulaoer ~] # cp mysql-connector-java-5.1.21.jar / home/gerrit/gerrit_site/lib/ [root @ wulaoer ~] # cp bcpkix-jdk15on-1.52.jar / home/gerrit/gerrit_site/lib/ [root @ wulaoer ~] # chown-R gerrit.gerrit / home/gerrit/
Fourth, install under the gerrit account
Note that mysql database and Verified,http authentication agent are selected here, and the rest are default.
[root@wulaoer ~] # su-gerrit [gerrit@wulaoer ~] $java-jar gerrit-2.11.3.war init-d ~ / gerrit_siteUsing securestore: com.google.gerrit.server.securestore.DefaultSecureStore*** Gerrit Code Review 2.11.3 Git Repositories*** Location of Git repositories [git]: * * SQL Database*** Database server type [h3]: mysql # Select mysqlServer hostname [ Localhost]: Server port [(mysql default)]: Database name [reviewdb]: gerritdb # Database name Database username [gerrit]: gerrituser # Database user name gerrituser's password: confirm password: # Database password * Index*** Type [LUCENE/?]: The index must be rebuilt before starting Gerrit: java-jar gerrit.war reindex-d site_path*** User Authentication*** Authentication method [OPENID/?]: httpGet username from custom HTTP header [yplink N]? SSO logout URL: * Review Labels*** Install Verified label [ygamma N]? SMTP username: * Email Delivery*** SMTP server hostname [localhost]: SMTP server port [(default)]: SMTP encryption [NONE/?]: SMTP username: * Container Process*** Run as [gerrit]: Java runtime [/ usr/local/jvm/jdk1.8.0_101/jre ]: Copy gerrit-2.11.3.war to / home/gerrit/gerrit_site/bin/gerrit.war [Y/n]? Copying gerrit-2.11.3.war to / home/gerrit/gerrit_site/bin/gerrit.war*** SSH Daemon*** Listen on address [*]: Listen on port [29418]: Gerrit Code Review is not shipped with Bouncy Castle Crypto SSL v151 If available, Gerrit can take advantage of features in the library, but will also function without it.Download and install it now [YBO]? Renaming bcpkix-jdk15on-1.52.jar to .bcpkix-jdk15on-1.52.jar.backupDownloading http://www.bouncycastle.org/download/bcpkix-jdk15on-151.jar...! FAIL!! error: http://www.bouncycastle.org/download/bcpkix-jdk15on-151.jar: 302 FoundPlease download: http://www.bouncycastle.org/download/bcpkix-jdk15on-151.jarand save as: / home/gerrit/gerrit_site/lib/bcpkix-jdk15on-151.jarPress enter to continue Continue without this library [Y/n]? Generating SSH host key... Rsa (simple)... Done*** HTTP Daemon*** Behind reverse proxy [y/N]? Use SSL (https://) [yplink N]? Listen on address [*]: Listen on port [8080]: Canonical URL [http://localhost:8080/]: * * Plugins*** Installing plugins.Install plugin download-commands version v2.11.3]? Install plugin reviewnotes version v2.11.3 [y/N]? Install plugin singleusergroup version v2.11.3 [y/N]? Install plugin replication version v2.11.3 [y/N]? Install plugin commit-message-length-validator version v2.11.3 [y/N]? Initializing plugins.No plugins found with init steps.Initialized / home/gerrit/gerrit_site
At this point, the gerrit installation is complete, and the next step is to start.
[gerrit@wulaoer ~] $/ home/gerrit/gerrit_site/bin/gerrit.sh startStarting Gerrit Code Review: FAILED
The solution to this error is as follows:
[gerrit@wulaoer] $java-jar gerrit-2.11.3.war reindex-d / home/gerrit/gerrit_site [2016-09-06 10 jar gerrit-2.11.3.war reindex 22 changes in 27387] INFO com.google.gerrit.server.git.LocalDiskRepositoryManager: Defaulting core.streamFileThreshold to 61m [2016-09-06 10 10 jar gerrit-2.11.3.war reindex 22 Swiss 28067] INFO com.google.gerrit.server.cache.h3.H2CacheFactory: Enabling disk cache / home/gerrit/gerrit_site/cacheReindexing changes: done Reindexed 0 changes in 0.0s (0.0comps) Warning InterruptedExceptionjava.lang.InterruptedException at java.lang.Object.wait (Native Method) at java.lang.Thread.join (Thread.java:1253) at org.h3.util.MathUtils.getSecureRandom (MathUtils.java:104) at org.h3.util.MathUtils.secureRandomBytes (MathUtils.java:301) at org.h3.store.FileLock.setUniqueId (FileLock.java:309) at org.h3.store.FileLock.lockFile (FileLock. Java:339) at org.h3.store.FileLock.lock (FileLock.java:133) at org.h3.engine.Database.open (Database.java:575) at org.h3.engine.Database.openDatabase (Database.java:236) at org.h3.engine.Database. (Database.java:231) at org.h3.engine.Engine.openSession (Engine.java:56) at org.h3.engine.Engine .openSession (Engine.java:160) at org.h3.engine.Engine.createSessionAndValidate (Engine.java:139) at org.h3.engine.Engine.createSession (Engine.java:122) at org.h3.engine.Engine.createSession (Engine.java:28) at org.h3.engine.SessionRemote.connectEmbeddedOrServer (SessionRemote.java:323) at org.h3.jdbc.JdbcConnection. (JdbcConnection.java:105) at org. H3.jdbc.JdbcConnection. (JdbcConnection.java:90) at org.h3.Driver.connect (Driver.java:73) at com.google.gerrit.server.cache.h3.H2CacheImpl$SqlHandle. (H2CacheImpl.java:636) at com.google.gerrit.server.cache.h3.H2CacheImpl$SqlStore.acquire (H2CacheImpl.java:604) at com.google.gerrit.server.cache.h3.H2CacheImpl$SqlStore.buildBloomFilter (H2CacheImpl.java:365) at com.google .gerrit.server.cache.h3.H2CacheImpl $SqlStore.open (H2CacheImpl.java:337) at com.google.gerrit.server.cache.h3.H2CacheImpl.start (H2CacheImpl.java:167) at com.google.gerrit.server.cache.h3.H2CacheFactory$1.run (H2CacheFactory.java:113) at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:617) at Java.lang.Thread.run (Thread.java:745) [2016-09-06 10 INFO com.google.gerrit.server.cache.h3.H2CacheFactory: Finishing 4 disk cache updates
Start it once and have a look.
[gerrit@wulaoer ~] $/ home/gerrit/gerrit_site/bin/gerrit.sh startStarting Gerrit Code Review: OK
If it appears
[gerrit@wulaoer ~] $/ home/gerrit/gerrit_site/bin/gerrit.sh start** ERROR: GERRIT_SITE not set
Solution:
Add the following line to the / home/gerrit/gerrit_site/bin/gerrit.sh startup file to specify the path to gerrit2
GERRIT_SITE=/home/gerrit/gerrit_site
Fifth, configure gerrit
Modify / home/gerrit/gerrit_site/etc/gerrit.config configuration file
[gerrit@wulaoer ~] $vi gerrit_site/etc/gerrit.config [gerrit] basePath = git canonicalWebUrl = http://192.168.0.145:8081/ # nginx proxy IP and port. [httpd] ListenUrl = http://*:8080/
Nginx defines the new port proxy configuration, make a copy of / usr/local/nginx/conf/nginx.conf under / usr/local/nginx/conf/vhost/, and modify the configuration file renamed gerrit.conf,gerrit as follows.
[gerrit@wulaoer vhost] $pwd/usr/local/nginx/conf/vhost [gerrit@wulaoer vhost] $cat gerrit.conf server {listen 8081; # Port server_name 192.168.0.145; # visit IP index index.html index.htm index.php; location / {auth_basic "Gerrit Code Review" Auth_basic_user_file / home/gerrit/gerrit_site/etc/passwords; proxy_pass http://192.168.0.145:8080/;# default ip+ port proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host;}}
The AuthUserFile path is / home/gerrit/gerrit_site/etc/passwords
In the nginx process, users default to www, and / home/gerrit needs to be given permission to access the path without permission.
[root@wulaoer] # setfacl-m g:www:rx / home/gerrit
Warm Tip: if you do not give permission to access the prompt 500 error
[or setfacl-R-m u:www:rx / home/gerrit above is authorized for the group to which it belongs, here you can authorize for users]
Sixth, create users
Htpasswd is needed to create users, so you need to install it here:
[root@wulaoer ~] # yum-y install httpd
Create authentication permissions (that is, the account and password used when logging in)
Note: the first time to add the-c parameter is to create a system administrator, do not add-c is a Mandarin user.
[root@wulaoer ~] # htpasswd-c / home/gerrit/gerrit_site/etc/passwords gerritNew password: Re-type new password: Adding password for user gerrit [root@wulaoer ~] # htpasswd / home/gerrit/gerrit_site/etc/passwords wulaoerNew password: Re-type new password: Adding password for user wulaoer [root@wulaoer ~] # htpasswd / home/gerrit/gerrit_site/etc/passwords jenkinsNew password: Re-type new password: Adding password for user jenkins
Here you create an administrator gerrit and two ordinary user jenkins,wulaoer. Two ordinary users will explain it in another article, so you don't have to care too much right now.
Restart the nginx service and turn off the firewall.
[root@wulaoer ~] # / usr/local/nginx/sbin/nginx-s reload [root@wulaoer ~] # service iptables stopiptables: set chain to policy ACCEPT:filter [OK] iptables: clear firewall rules: [OK] iptables: uninstalling module: [OK]
Next, visit http://192.168.0.145:8081 and enter the created user information to log in to gerrit.
The above is about the construction and simple configuration of gerrit.
%%%
The following is the mailbox settings. Originally, the mailbox was installed by default during installation. Log in to gerrit after installation, and the default mailbox is empty, so set manually, register the mailbox and activate it. The settings are as follows:
[root@wulaoer ~] # su-gerrit [gerrit@wulaoer ~] $cd gerrit_site/etc/ [Gerrit @ wulaoer etc] $vi gerrit.config # [sendemail] smtpServer = smtp.exmail.qq.com # Outbox information setting smtpUser = * @ qq.com from = * @ qq.com smtpPass = * # # [gerrit@wulaoer etc] $vi secure.config # [sendemail] smtpPass = *
Note: the password of sendemail will be saved in the secure.config file. Make sure that the password in the gerritconfig file is the same as that of secure.conf.
Just restart the gerrit service
[gerrit@wulaoer etc] $/ home/gerrit/gerrit_site/bin/gerrit.sh restartStopping Gerrit Code Review: OKStarting Gerrit Code Review: OK
Log in to the gerrit page to register a mailbox after a successful restart. It is clear that the mailbox is not registered by default. There is no mailbox to select in the settings bar.
If it is sent successfully, QQ Mail who logs in to himself will receive an email from the sender set up on gerrit. To check his email is QQ Mail at the end of 69 entered above. Click on the red link can be directly activated, some browsers can not be adjusted recommended to change to Firefox browser.
Click to connect to activate the mailbox, and there will be an active mailbox in the settings bar.
The user who clicks on the upper right corner has a settings.
Note: when you create the first user with htpasswd, the system administrator has an ID of 1. Only the system administrator has Create permissions (create group and project), and the rest only have view rights. When you create a user using htpaswd, no account is added to the gerrit, and the account is added to the gerrit database only if the user logs in to the gerrit server through web.
Log out of the admin account and log in again (Sign Out is not supported in HTTP authentication mode. You need to exit the account by Sign Out first, close the browser and then log in before the dialog box for http password verification appears.
* * git Chinese coding problem *
In order to properly solve the problem of Chinese coding, the following conventions are made for all git repository:
A. All text files must be stored in utf8 encoding
B. Make the following settings for git:
Git config-global core.quotepath false git config-global i18n.logoutputencoding utf8 git config-global i18n.commitencoding utf8
When installing gerrit, the encoding for the database (if you choose myqsl mode) is set to utf8
* * gerrit interfacing with gitweb*
For the gerrit built above, log in and there is no gitweb hyperlink on the right side of the Projects project.
1. You need to build the gitweb first, and then configure it.
[root@wulaoer] # yum install-y gitweb [or direct yum install-y git*]
The directory path after gitweb installation is / var/www/git
two。 Configure it through git config
[root@wulaoer] # git config-- file / home/gerrit/gerrit_site/etc/gerrit.config gitweb.cgi / var/www/git/gitweb.cgi [root@wulaoer ~] # git config-- file / home/gerrit/gerrit_site/etc/gerrit.config-- unset gitweb.url
3. After restarting gerrit and logging in to gerrit, the gitweb hyperlink effect will be available.
* *
Gitweb is quite practical.
You can see all the recent developments in the project code by opening the gitweb of a project on gerrit!
[default: only administrator privileges of gerrit can view gitweb]
[ordinary users need to add access permissions later if they want to access gitweb, which will be explained in detail later]
* * ssh public key setting *
On the local gerrit machine, use the following command to generate the public and private keys of the administrator account (here gerrit is the administrator)
[root@wulaoer ~] # su-gerrit [gerrit@wulaoer ~] $ssh-keygen-t rsa-C 99317069@qq.comGenerating public/private rsa key pair.Enter file in which to save the key (/ home/gerrit/.ssh/id_rsa): Created directory'/ home/gerrit/.ssh'.Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in / home/gerrit/.ssh/id_rsa.Your public key has been saved in / home/gerrit/.ssh/id_ Rsa.pub.The key fingerprint is:bc:58:5a:8d:73:0b:ac:01:39:ac:96:02:85:45:92:ba 99317069@qq.comThe key's randomart p_w_picpath is:+-- [RSA 2048]-+ |. = + | | oo. . | | o = | | o | |.. +. S o | | Eo B =. | | +. . | +-+ [gerrit@wulaoer ~] $cat ~ / .ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2e/iJxw7FG0rhSZkSy2M31JBW/lnNewRgu6cyC2jMheqYVHZhf9XlAR9gfR8V8h2nqBo8GWraNchdOAdTNTZ1nqfrE4iDRd2FKhL2zx47oErj3H/Hv6747r0pagP+kCt7c2hglHXhhs4SLWg3BSK+tXOM1Db7kgp+QhwrbmjkbLXJ+G/LwlLJMY1q6mI5fmEUmCC+QfZgZ9e9vKO6fjFDjD5nHsRd70Jnf1fUQC99FvqiYhw8e/YJNnY+dMoczTDDwzx6zsB0qx6Cpw5GskCUPVztqDeH7TgRZgY6Ttkakglied2sv11sRzVV0sn3msCgmu1qsIdTeCDx5gdJQEI0w== 99317069@qq.com |
Copy the public key content of the gerrit account to the SSH Public Keys in the gerrit interface.
Settings
Next, set an alias to make it easy to connect to gerrit using ssh
It can be set directly in the .bashrc file under the gerrit user's home directory (/ home/gerrit). The following alias is used to log in to the admin account of gerrit:
[gerrit@wulaoer] $vi .bashrc # .bashrc # Source global definitionsif [- f / etc/bashrc]; then. / etc/bashrcfi# User specific aliases and functions
And then let the file take effect.
[gerrit@wulaoer ~] $source .bashrc [gerrit@wulaoer ~] $ssh-gerritThe authenticity of host'[192.168.0.145]: 29418 ([192.168.0.145]: 29418) 'can't be established.RSA key fingerprint is 4f:6a:ec:3c:7e:52:2e:56:0a:e0:b1:fb:38:86:da:42.Are you sure you want to continue connecting (yes/no)? YesWarning: Permanently added'[192.168.0.145]: 29418'(RSA) to the list of known hosts. * Welcome to Gerrit Code Review * Hi gerrit administrator, you have successfully connected over SSH. Unfortunately, interactive shells are disabled. To clone a hosted Git repository, use: git clone ssh://gerrit@192.168.0.145:29418/REPOSITORY_NAME.gitConnection to 192.168.0.145 closed.
* * Gerrit permission description * *
The deployment of the gerrit environment is described above, and the gerrit permissions are described below:
Abandon
This permission allows the user to discard a submitted change. If the user has push permission, the user is assigned restore a change permission at the same time as the user is assigned this permission.
Create Reference
This rights management user is available to create a references,branches,tags. This permission is generally assigned along with normal push permissions.
Forge Author
Forge the initiator permission, which allows the user to bypass the authentication at the time of submission (Gerrit by default matches the email address in the author or committer line of the submission information, and if the Email address does not match, the submission is not allowed).
Forge Committer
Falsify the submitter permission, which allows the user to bypass the authentication at the time of submission (Gerrit by default matches the email address in the author or committer line of the submission information, and if the Email address does not match, the submission is not allowed).
Forge Server
Spoofing Gerrit server permissions that allow the use of server owner and email in committer rows
Owner
This permission allows users to modify the configuration of Xiang project, as shown below:
Modify project description
Create a branch through the "create-branch" command of ssh
Create / delete branch in the web UI interface
Allow / revoke any access rights, including Owner permissions.
Push
This category controls how users are allowed to push new commit to Gerrit.
Direct Push
All existing branch can fast forward to the new commit. Creating new branches is controlled by "Create Reference", and existing branches are not allowed to be deleted, which is the safest mode (because commit cannot be discarded).
Force option
Allow existing branch to be deleted. Turn on this option to delete the submission record from the project history.
This permission is mainly used for projects that only want to use the access control of Gerrit and do not need the code review function of Gerrit.
Upload To Code Review
This push permission is assigned on the refs/for/refs/heads/BRANCH namespace, allowing the user to submit an unmerged (non-merge) commit to the refs/for/BRANCH namespace, creating a new code review change.
The user must be able to clone and fetch a project to submit the change, so the user must also have Read permission.
Push Merge Commits
This permission allows the user to submit merge commits, which is an attachment to the Push permission. If you want to allow merge operations only through Gerrit, then you should assign Push only and not this permission.
Push Annotated Tag
This permission allows the user to submit an annotated tag to the project repository. It is usually submitted in the following two ways:
Git push ssh://USER@HOST:PORT/PROJECT tag v1.0
Or:
Git push https://HOST/PROJECT tag v1.0
Tags must be annotated (using git tag-a), must exist under refs/tags/, and must be new.
Generally, a Tag will be hit when the project is stable and available for release.
This permission allows you to create an unsigned Tag. The email address of the Tag caller must be the same as that of the current user.
If you want to submit a Tag that you did not call yourself, you must also assign Forge Committer Identity permission.
If you want to submit a light label (lightweight tags), assign Create Reference permissions to the reference / refs/tags/*
If you want to delete or overwrite an existing tag, assign Push permissions and turn on Force option.
Push Signed Tag
This permission allows the user to submit a PGP-signed tag to the project repository. It is usually submitted in the following two ways:
Git push ssh://USER@HOST:PORT/PROJECT tag v1.0
Or:
Git push https://HOST/PROJECT tag v1.0
Tags must be annotated (using git tag-a), must exist under refs/tags/, and must be new.
Read
Such permissions control the changes, comments, and code diffs visibility of the project, and whether the Git can be accessed through SSH or HTTP.
If this permission is set in the ACL of a separate project, the setting in the global ACL will not work.
Rebase
This class only allows users to modify through the "Rebase Change" button of the web page (Rebase)
Remove Reviewer
Such permissions allow users to remove other users from the reviewers list of one change.
The owner of a change can remove a reviewers with a score of 0 or a negative score (even if it does not have this permission).
Project owners and site administrators can remove all reviewers, even if they do not have this permission.
Users who do not have this permission can only remove themselves.
Review Labels
/ / TODO
Submit
This permission allows the user to submit a changes.
Submitting a change allows the change to be merged into the destination branch as quickly as possible, making it a permanent part of the project history.
In order to submit a change, all labels must allow it to be submitted and cannot block it.
If you want to quickly submit a change on push, the user needs to have this permission on refs/for/ (e.g. On refs/for/refs/heads/master).
Submit (On Behalf Of)
Such permissions allow users with Submit privileges to submit change on behalf of other users.
In the project.config file, this permission is named submitAs.
View Drafts
Such permissions allow users to view drafts changes submitted by other users
The user of change and any explicitly added reviewers can also be viewed (even if this permission is not used)
Publish Drafts
Such permissions allow users to publish drafts changes submitted by other users
The user of change and any explicitly added reviewers can also be viewed (even if this permission is not used)
Delete Drafts
Such permissions allow users to delete drafts changes submitted by other users
The user of change and any explicitly added reviewers can also be viewed (even if this permission is not used)
Edit Topic Name
Allows the user to edit the topic name of the change submitted to review.
Change users, branch users, project users, and webmasters can all edit this title (even if they do not have this permission).
The "Force Edit" identity controls whether closed change titles can be edited, and if this identity setting can only edit open changes, you cannot edit closed change titles.
Edit Hashtags
Allows users to add or remove hashtags on changes submitted to reviews.
The user of change and any explicitly added reviewers can also be viewed (even if this permission is not used)
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.